Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2011, 11:37   #1
EvgeniyavM
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 5
По умолчанию Создание макроса.

Помогите пожалуйста!!!!!
Условия такие:
Есть в книге 31 лист (31 день в месяце) +итоговый лист. В каждом листе пользователи будут забивать свои данные в табличку, на каждом листе может быть разное количество заполненных строк. Так вот - макрос должен собирать только заполненные строки таблиц и записывать их в итоговый лист в этой же книге, чтобы получилась такая сводная табличка, в составе которой данные из листов.
Заранее спасибо!
Вложения
Тип файла: zip 1.zip (4.7 Кб, 17 просмотров)

Последний раз редактировалось EvgeniyavM; 02.02.2011 в 11:51.
EvgeniyavM вне форума Ответить с цитированием
Старый 02.02.2011, 11:52   #2
Djeki
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 136
Смех

В этом макросе данные со всех листов заносятся на последний (справа ) лист

Sub m_1() 'Копирование всех листов на последний лист
Dim i As Long
Dim x&
Dim s$
For i = 1 To ActiveWorkbook.Worksheets.Count - 1
x = ActiveWorkbook.Worksheets(ActiveWor kbook.Sheets.Count).Cells. _
SpecialCells(xlCellTypeLastCell).Ro w
s = ActiveWorkbook.Worksheets(i).Cells. SpecialCells(xlCellTypeLastCell). _
Address
ActiveWorkbook.Worksheets(i).Range( "A1:" & s).Copy
ActiveWorkbook.Worksheets(1).Paste Destination:=ActiveWorkbook. _
Worksheets(ActiveWorkbook.Worksheet s.Count).Range("A" & x)
Next i
Application.CutCopyMode = False
End Sub
Djeki вне форума Ответить с цитированием
Старый 02.02.2011, 11:55   #3
EvgeniyavM
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 5
По умолчанию

А он учитывает, что 01 может быть заполнено всего 3 строчки, а 02 - 4 строчки, 03 - 2 строчки - и в итоговой части должны эти строчки идти без пробелов.
EvgeniyavM вне форума Ответить с цитированием
Старый 02.02.2011, 11:58   #4
EvgeniyavM
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 5
По умолчанию

И это макрос у меня не работает - ругается(((((
Sub m_1() 'Êîïèðîâàíèå âñåõ ëèñòîâ íà ïîñëåäíèé ëèñò
Dim i As Long
Dim x&
Dim s$
For i = 1 To ActiveWorkbook.Worksheets.Count - 1
x = ActiveWorkbook.Worksheets(ActiveWor kbook.Sheets.Count).Cells. _
SpecialCells(xlCellTypeLastCell).Ro w
s = ActiveWorkbook.Worksheets(i).Cells. SpecialCells(xlCellTypeLastCell). _
Address
ActiveWorkbook.Worksheets(i).Range( "A1:" & s).Copy
ActiveWorkbook.Worksheets(1).Paste Destination:=ActiveWorkbook. _
Worksheets(ActiveWorkbook.Worksheet s.Count).Range("A" & x)
Next i
Application.CutCopyMode = False
End Sub


ругается на то, что я выделила


ой я там сама разобралась как исправить - там разрыв в буквах был

Последний раз редактировалось EvgeniyavM; 02.02.2011 в 12:00.
EvgeniyavM вне форума Ответить с цитированием
Старый 02.02.2011, 11:59   #5
Djeki
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 136
По умолчанию

Попробуйте.. Копирует данные со всех листов на последний..
Djeki вне форума Ответить с цитированием
Старый 02.02.2011, 12:03   #6
EvgeniyavM
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 5
По умолчанию

я попробовала - спасибо большое вам, макрос рабочий, но как сделать так, чтобы он не копировал все строчки из листов, а только заполненные...И в итоговом листе 31 раз шапку таблиц не копировал??? а просто заполнял таблицу под одной шапкой?
EvgeniyavM вне форума Ответить с цитированием
Старый 02.02.2011, 12:08   #7
Djeki
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 136
Подмигивание

А у меня не ругается..Попробуйте. Кнопка на последнем листе..Нажмите.
Вложения
Тип файла: rar 1.rar (14.2 Кб, 19 просмотров)
Djeki вне форума Ответить с цитированием
Старый 02.02.2011, 12:13   #8
Djeki
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 136
По умолчанию

Цитата:
Сообщение от EvgeniyavM Посмотреть сообщение
я попробовала - спасибо большое вам, макрос рабочий, но как сделать так, чтобы он не копировал все строчки из листов, а только заполненные...И в итоговом листе 31 раз шапку таблиц не копировал??? а просто заполнял таблицу под одной шапкой?
Макрос надо писать...
Djeki вне форума Ответить с цитированием
Старый 02.02.2011, 12:25   #9
EvgeniyavM
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 5
По умолчанию

)))) так вот я и прошу помочь мне его написать
EvgeniyavM вне форума Ответить с цитированием
Старый 02.02.2011, 14:47   #10
Djeki
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 136
Смех

Цитата:
Сообщение от EvgeniyavM Посмотреть сообщение
)))) так вот я и прошу помочь мне его написать
Здесь форум программистов , на который Вы выкладываете свои программы и пишите что не получается. Если Вы хотите что бы написали макрос бесплатно, есть раздел - помощь студентам, если на платной основе - раздел фриланс.. Пишите в асю - сделаю..
Djeki вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматизированное создание макроса 3BEPOBOY Microsoft Office Excel 7 26.01.2011 13:52
Автоматическое создание макроса lavrentiyy Microsoft Office Excel 16 14.10.2010 00:07
Создание макроса Ленусик777 Microsoft Office Excel 4 28.05.2010 14:49
Создание макроса SeregaSled Microsoft Office Access 2 28.12.2009 05:55
Помогите!!!!!!!! Создание макроса!!!! Ленусик777 Помощь студентам 1 26.04.2009 22:17