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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2010, 06:02   #21
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Исправил. Посмотрите.
Подскажите, что подправить в макросе, что бы сразу запонялись все листы , одним запуском макроса.
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 06:43   #22
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Сейчас, при запуске макроса, выводится форма, в которой пользователю предлагается выбрать требуемые листы для обработки. Нужно сделать так, чтобы по умолчанию (без формы) обрабатывались все имеющиеся листы с именами "01", "02", ..., "11", "12". Так?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 04.02.2010, 07:21   #23
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Сейчас, при запуске макроса, выводится форма, в которой пользователю предлагается выбрать требуемые листы для обработки. Нужно сделать так, чтобы по умолчанию (без формы) обрабатывались все имеющиеся листы с именами "01", "02", ..., "11", "12". Так?
Да , именно так
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 08:37   #24
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Так подойдет?
Вложения
Тип файла: rar kassa_5.rar (27.1 Кб, 5 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 04.02.2010, 09:16   #25
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Так подойдет?
Да, работает отлично.
Правда есть один нюанс, если в файле "allwork-2005-year.xlsm"
включен автофильтр, работает некорректно.
Полагаю что это не очень существенно, просто надо быть повнимателней.
Или же возможно обойти это ограничение?
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 10:04   #26
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите вложение. Я не стал разбираться, почему при включенном автофильтре макрос работает не так. Добавил снятие на всех листах примененных (если таковые имеются) автофильтров.
Вложения
Тип файла: rar kassa_6.rar (27.2 Кб, 9 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 04.02.2010, 10:16   #27
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Посмотрите вложение.
Спасибо, и еще раз а то сообщение слишком короткое
kzld вне форума Ответить с цитированием
Старый 10.02.2010, 22:30   #28
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Посмотрите вложение. Я не стал разбираться, почему при включенном автофильтре макрос работает не так. Добавил снятие на всех листах примененных (если таковые имеются) автофильтров.
Странный глюк.
Взял с форума макрос и поместил его в стандартный модуль книги.
Снять автофильтр, теперь в файле kassa-2005 со всех листов разом.
Теперь предложенный Вами макрос работать отказывается.
код макроса
Код:
Sub Delete_Filter()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Sheets
    If ws.AutoFilterMode Then ws.ShowAllData
Next
End Sub
kzld вне форума Ответить с цитированием
Старый 11.02.2010, 08:13   #29
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Странно.
1) Этот код не отключает автофильтр (такого требования не было), а снимает примененную фильтрацию по всем критериям (отображает все строки).
2) Внутри кода предложенного макроса есть строки:
Код:
If ActiveSheet.AutoFilterMode Then ActiveSheet.ShowAllData
If ws.AutoFilterMode = True Then ws.ShowAllData
Где ActiveSheet - это текущий обрабатываемый лист из файла "allwork-2005-year.xlsm" ("январь", "февраль" и т.д.), а ws - соответствующий ему лист ("01", "02 и т.д.) из файла, содержащего макрос. Т.е. как видно, перед работой с листами, в случае, если установлен автофильтр, не зависимо от того, применен автофильтр или нет, все строки отображаются. И это у Вас работало!
3) Давайте Ваш файл с макросом, и поясните, в каком случае возникает ошибка (или, что значит "макрос работать отказывается"?)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 11.02.2010, 10:03   #30
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Странно.
(или, что значит "макрос работать отказывается"?)
Макрос предложенный Вами после выполнения макроса снятия автофильтра не заполняет ячейки файла kassa-2005.
А может это быть из за того что (сейчас попробую) что в файле "allwork-2005-year.xlsm" листы наименованы "01" "02" и т.д. соответственно и в макросе они так-же прописаны, а в файле "kassa-2005.xlsm" листы наименованы "jan" , "feb" "mar" и т.д.
Цитата:
если установлен автофильтр, не зависимо от того, применен автофильтр или нет, все строки отображаются. И это у Вас работало!
Да сработало, автофильтр был снят со всех листов
kzld вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объединить два макроса KOSTIK1 Microsoft Office Excel 3 06.03.2010 22:09
Два одинаковых макроса GES Microsoft Office Excel 2 12.01.2010 11:27
Соединить два списка в третий Иванов_ДМ Microsoft Office Excel 11 20.08.2009 08:21
соединить два 3d объекта NewXakep Помощь студентам 1 11.07.2009 11:34
Очень нужно соединить два скрипта Yudgin JavaScript, Ajax 11 22.11.2007 13:38