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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2010, 09:19   #1
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию Снять автофильтр с нескольких листов разом

Имеется книга Excel.
Листы идентичные друг другу.
ЯРЛЫЧОК ЛИСТА-КОПИРОРОВАТЬ-СОЗДАВАТЬ КОПИЮ-ВСТАВИТЬ
Возможно ли снять автофильтр сразу с нескольких (со всех) листов одним (двумя.тремя) движениями
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 10:04   #2
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Ну да, можно. Макросом.
Код:
Dim wsSh As Worksheet
For Each wsSh In Sheets
If wsSh.AutoFilterMode Then wsSh.UsedRange.AutoFilter
Next wsSh
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 04.02.2010, 10:07   #3
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

[QUOTE=The_Prist;452129]Ну да, можно. Макросом.

Макрос надо сохранить в "ЭТА КНИГА"
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 10:08   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Можно еще так:
Код:
Dim ws As Worksheet
For Each ws In ThisWorkbook.Sheets
    If ws.AutoFilterMode Then ws.ShowAllData
Next
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 04.02.2010, 11:16   #5
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от kzld Посмотреть сообщение
Макрос надо сохранить в "ЭТА КНИГА"
Это вопрос или предложение?
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 04.02.2010, 16:37   #6
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Это вопрос или предложение?
Конечно вопрос
kzld вне форума Ответить с цитированием
Старый 04.02.2010, 17:33   #7
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Макрос надо сохранить в стандартном модуле и запускать по мере необходимости. Только не забудьте добавить вначале имя процедуры(к примеру: Sub Delete_Filter), а в конце закрыть её - End Sub.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 04.02.2010, 17:55   #8
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Спасибо за помощь начинающим
kzld вне форума Ответить с цитированием
Старый 05.02.2010, 17:36   #9
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Ну да, можно. Макросом.
Спасибо, работает.
Вариант предложенный Вами начисто снимает (удаляет) фильтр.
Вариант предложенный SAS888 мне подходит больше.
Хотя на вкус и цвет-как известно товарищей нет.

А теперь вопрос другой:
Повторяю, листы в книге от 01 по 12 однотипные - это месяцы года, ну и парочка листов сводных.
Так вот, а можно ли макросом ставить одинаковый фильтр сразу на нескольких (в частности на двенадцати ) листах одновременно.

Допустим на первом листе выставляю автофильтр и все остальные листы с 02 по 12 также подчиняются требованию автофильтра
kzld вне форума Ответить с цитированием
Старый 13.02.2010, 14:47   #10
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Можно еще так:
Код:
Dim ws As Worksheet
For Each ws In ThisWorkbook.Sheets
    If ws.AutoFilterMode Then ws.ShowAllData
Next
Почему то, если автофильтр включен только на одном листе, а на других ни одна позиция автофильтра не включена (т.е видно всё) макрос предложенный SAS888 , "вылетает на строчке"
If ws.AutoFilterMode Then ws.ShowAllData
ТО, что выше выделено жирным, подсвечивается жёлтым цветом в VIsualBasic , при нажатии кнопки DEBUG
Как надо подправить макрос ?
kzld вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В книге защищен каждый лист. Как быстро снять защиту со всех листов, а потом ее поставить опять? Катик7 Microsoft Office Excel 13 28.04.2011 16:02
перенос данных из нескольких листов в 1 Екатрина Microsoft Office Excel 5 17.12.2009 18:28
Автоматически снять защиту с листов Chelentano Microsoft Office Excel 2 24.07.2009 20:55
печать нескольких листов checkbox Microsoft Office Excel 2 16.01.2008 00:50