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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.07.2011, 04:52   #1
tim_oha
Новичок
Джуниор
 
Регистрация: 11.07.2011
Сообщений: 2
По умолчанию Расширенный фильтр через макрос

Здравствуйте!

Благодаря вашему форуму мне удалось написать макрос, при котором чекбокс включает расширенный фильтр на активном листе.

Цитата:
Sub Флажок1_Щелчок()
If (ActiveSheet.CheckBoxes(1).Value = 1) Then
Range("A10:AF5000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("A1:AF2"), Unique:=False
Else: ActiveSheet.ShowAllData
End If
End Sub
Теперь необходимо решить проблему, при которой флажок располагается на другом листе на действие все те же, "включение и выключение расширенного фильтра".
Надеюсь, на вашу подсказку.
Вложения
Тип файла: rar Книга1.rar (621.4 Кб, 42 просмотров)
tim_oha вне форума Ответить с цитированием
Старый 11.07.2011, 05:26   #2
tim_oha
Новичок
Джуниор
 
Регистрация: 11.07.2011
Сообщений: 2
По умолчанию

Ну в общем сам решил вопрос:
вот может кому пригодиться

Цитата:
Sub Флажок3_Щелчок()
If (ActiveSheet.CheckBoxes(1).Value = 1) Then
Sheets("ТСЗП-11").Range("A10:AF5000").AdvancedFi lter Action:=xlFilterInPlace, CriteriaRange:= _
Sheets("ТСЗП-11").Range("A1:AF2"), Unique:=False
Else: Sheets("ТСЗП-11").ShowAllData
End If
End Sub

Правда, теперь проблема с тем, чтобы состыковать два и более листов....
Вложения
Тип файла: rar Книга2.rar (621.7 Кб, 32 просмотров)

Последний раз редактировалось tim_oha; 11.07.2011 в 06:14.
tim_oha вне форума Ответить с цитированием
Старый 08.10.2011, 22:30   #3
Raikhman
Пользователь
 
Аватар для Raikhman
 
Регистрация: 30.01.2009
Сообщений: 75
По умолчанию

Цитата:
Сообщение от tim_oha Посмотреть сообщение
Ну в общем сам решил вопрос:
...
Молодец tim_oha!
Так держать.
Raikhman вне форума Ответить с цитированием
Старый 22.11.2012, 15:09   #4
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

А как реализовать что бы фильтровались значения в связи с вводом значений в критерий (не после активации Чекбокса). Фильтровались сразу во время ввода или после выхода с ячейки?
Severny вне форума Ответить с цитированием
Старый 22.11.2012, 16:57   #5
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Вот мой нерабочий вариант.
Код:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim iCell As Range
Set Target = Range("B3:D4")
For Each iCell In Target
If iCell.Value <> "" Then
Range("B5:D10400").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Target, Unique:=False
Else
On Error Resume Next
ActiveSheet.ShowAllData
End If
Next
End Sub
Видно что-то фильтрует, но потом всеравно отображает все записи.

Последний раз редактировалось Severny; 22.11.2012 в 16:59.
Severny вне форума Ответить с цитированием
Старый 22.11.2012, 23:08   #6
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Наверно так
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("B4:D4")) Is Nothing Then 'B4:D4 - диапазон параметров
    Range("B5:D10400").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("B3:D4"), Unique:=False
End If
End Sub
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 23.11.2012, 10:51   #7
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Не работает у меня.
Вложения
Тип файла: rar ДК 016-2010 Cекція С.rar (2.20 Мб, 29 просмотров)
Severny вне форума Ответить с цитированием
Старый 23.11.2012, 12:15   #8
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Касательно моего примера.
Как в расширенном фильтре установить критерий что бы фильтровало записи "начинающиеся с..."?
И фильтровало по-порядку ввода в диапазон критериев. Тоесть отф. сначала первый столбец, а потом я мог отф. второй.?
Severny вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расширенный фильтр Пользователь1 Microsoft Office Excel 7 04.05.2011 19:08
VBA расширенный фильтр rjaba123 Помощь студентам 1 16.04.2011 00:02
расширенный фильтр Михаил2261 Microsoft Office Excel 1 03.05.2010 20:04
Расширенный фильтр (VBA) Flame811 Microsoft Office Excel 0 10.12.2009 15:46