|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.04.2010, 13:21 | #1 |
Регистрация: 02.12.2008
Сообщений: 5
|
Макрос для всех листов в книге
Господа, подскажите пожалуйста можно ли применить макрос (состоит из семи макросов поменьше), который обрабатывает таблицу на листе, группируя данные в необходимом для создания сводной таблицы порядке, ко всем листам в книге с одинаковыми таблицами, но разными данными
|
22.04.2010, 13:59 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
То, что Вы делали для одного листа берете в "скобки"
With Sheets(i) End With везде где требуется ставите точки например было cells(...) ставите .cells(...) подставляя вместо i нужные номера листов выполняеете эту процедуру для каждого из них. for i = 1 to 10 With Sheets(i) ' ваш код дополненный проставленными перед некоторыми обьектами точками. End With next
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
22.04.2010, 14:26 | #3 |
Регистрация: 02.12.2008
Сообщений: 5
|
Спасибо большое за ответ, но прочитал его раз двадцать, поискал, куда кавычки ставить, но так и не понял Я в этом деле так ювелирно не умею, только молотом из камня могу, кажется столько лишнего делаю, но пока как умею, всё равно лучше чем в ручную. Покажите на файле пожалуйста, надеюсь он корректно отобразит все.
|
22.04.2010, 16:31 | #4 |
Регистрация: 02.12.2008
Сообщений: 5
|
Вроде догнал, но собака почему то на одном листе все 2 раза проделывает , помогите пожалуйста!!!!
Код:
Последний раз редактировалось Rok; 22.04.2010 в 16:55. |
22.04.2010, 17:01 | #5 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Каждый макрос можно сократить по объёму в 20 раз, при этом они будут работать в 10 раз быстрее. Достаточно убрать все .Select, .Activate и удалить строки, начинающиеся с ActiveWindow. Кроме того, в случае с вашими макросами вариант с With Sheets(i) работать не будет до тех пор, пока вы не оптимизируете макросы. Ну или используйте такую конструкцию (поскольку ваши макросы работают сейчас только с активным листом): Код:
|
|
26.04.2010, 08:55 | #6 |
Регистрация: 02.12.2008
Сообщений: 5
|
благодарю
IgorGO, огромное спасибо еще в четверг все получилось!!!
EducatedFool, тоже огромное спасибо, что такого Фула проидюкетели, так намного чище и приятней смотрится, когда все лишнее уберешь, теперь заморочился везде лишнее убираю, еще бы мне научится сразу без этого делать!!!! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В книге защищен каждый лист. Как быстро снять защиту со всех листов, а потом ее поставить опять? | Катик7 | Microsoft Office Excel | 13 | 28.04.2011 16:02 |
Макрос для всех листов | as-is | Microsoft Office Excel | 8 | 10.02.2011 21:15 |
Макрос записанный вручную для всех листов | as-is | Microsoft Office Excel | 1 | 14.03.2010 14:35 |
Получить имена всех листов в книге | Temnota | Microsoft Office Excel | 6 | 26.12.2009 07:36 |