Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Установить и снять фильтр в 1 sub - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Установить и снять фильтр в 1 sub (Макросы/Sub)
Установить и снять фильтр в 1 sub
lFJl Дата: Пятница, 19.02.2016, 09:12 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 182
Репутация: 3 ±
Замечаний: 0% ±

Excel 2007
Доброго дня!
Подскажите, как можно в 1 макрос и установку и снятие автофильтра сделать? чет не допру никак.
пример сделал.
[moder]Вы бы описали свою хотелку полностью. Зачем и почему Вам это?
К сообщению приложен файл: 0209842.xlsm(17Kb)


Сообщение отредактировал _Boroda_ - Пятница, 19.02.2016, 09:44
 
Ответить
СообщениеДоброго дня!
Подскажите, как можно в 1 макрос и установку и снятие автофильтра сделать? чет не допру никак.
пример сделал.
[moder]Вы бы описали свою хотелку полностью. Зачем и почему Вам это?

Автор - lFJl
Дата добавления - 19.02.2016 в 09:12
Апострофф Дата: Пятница, 19.02.2016, 09:21 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 26 ±
Замечаний: 0% ±

Excel 2003
Так?
[vba]
Код
Sub фил2()
If [b2].Value = 1 Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter 'Field:=1
    [b2].Value = 0
Else 'If [b2].Value = 0 Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
        RGB(255, 255, 0), Operator:=xlFilterCellColor
    [b2].Value = 1
End If
End Sub
[/vba]
 
Ответить
СообщениеТак?
[vba]
Код
Sub фил2()
If [b2].Value = 1 Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter 'Field:=1
    [b2].Value = 0
Else 'If [b2].Value = 0 Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
        RGB(255, 255, 0), Operator:=xlFilterCellColor
    [b2].Value = 1
End If
End Sub
[/vba]

Автор - Апострофф
Дата добавления - 19.02.2016 в 09:21
lFJl Дата: Пятница, 19.02.2016, 13:24 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 182
Репутация: 3 ±
Замечаний: 0% ±

Excel 2007
Модератор:
Вы бы описали свою хотелку полностью. Зачем и почему Вам это?

Сделать как в примере, только без использования ячейки

Цитата Апострофф, 19.02.2016 в 09:21, в сообщении № 2
[b2].Value

Да, только без использования ячейки :)
[moder]Да, вот теперь все сразу стало понятно.


Сообщение отредактировал _Boroda_ - Пятница, 19.02.2016, 13:34
 
Ответить
Сообщение
Модератор:
Вы бы описали свою хотелку полностью. Зачем и почему Вам это?

Сделать как в примере, только без использования ячейки

Цитата Апострофф, 19.02.2016 в 09:21, в сообщении № 2
[b2].Value

Да, только без использования ячейки :)
[moder]Да, вот теперь все сразу стало понятно.

Автор - lFJl
Дата добавления - 19.02.2016 в 13:24
_Boroda_ Дата: Пятница, 19.02.2016, 13:49 | Сообщение № 4
Группа: Модераторы
Ранг: Экселист
Сообщений: 9345
Репутация: 3921 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Кажись, я догадался
Вот так нужно?
[vba]
Код
Sub tt()
    If ActiveSheet.ListObjects("Таблица1").AutoFilter.FilterMode Then
        ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1
    Else
       ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
            RGB(255, 255, 0), Operator:=xlFilterCellColor
    End If
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеКажись, я догадался
Вот так нужно?
[vba]
Код
Sub tt()
    If ActiveSheet.ListObjects("Таблица1").AutoFilter.FilterMode Then
        ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1
    Else
       ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
            RGB(255, 255, 0), Operator:=xlFilterCellColor
    End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 19.02.2016 в 13:49
al-Ex Дата: Пятница, 19.02.2016, 16:17 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 53 ±
Замечаний: 20% ±

Excel 2010
Опоздал, блин((
У меня вот-так получилось:[vba]
Код
Sub фильтер()
If ActiveSheet.FilterMode = True Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1
        Exit Sub
End If
If ActiveSheet.FilterMode = False Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
        RGB(255, 255, 0), Operator:=xlFilterCellColor
        Exit Sub
End If
End Sub
[/vba]
Тут фишка в свойстве FilterMode :
Свойство FilterMode. Допустимые значения: True (если на рабочем листе имеются отфильтрованные данные со скрытыми строками), False (в противном случае)
Вот еще полезное:
Свойство AutoFilterMode. Допустимые значения: True (если на рабочем листе выведены раскрывающиеся списки метода AutoFilter), False (в противном случае).
Вот здесь, ясно расписано.


Сообщение отредактировал al-Ex - Пятница, 19.02.2016, 16:34
 
Ответить
СообщениеОпоздал, блин((
У меня вот-так получилось:[vba]
Код
Sub фильтер()
If ActiveSheet.FilterMode = True Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1
        Exit Sub
End If
If ActiveSheet.FilterMode = False Then
    ActiveSheet.ListObjects("Таблица1").Range.AutoFilter Field:=1, Criteria1:= _
        RGB(255, 255, 0), Operator:=xlFilterCellColor
        Exit Sub
End If
End Sub
[/vba]
Тут фишка в свойстве FilterMode :
Свойство FilterMode. Допустимые значения: True (если на рабочем листе имеются отфильтрованные данные со скрытыми строками), False (в противном случае)
Вот еще полезное:
Свойство AutoFilterMode. Допустимые значения: True (если на рабочем листе выведены раскрывающиеся списки метода AutoFilter), False (в противном случае).
Вот здесь, ясно расписано.

Автор - al-Ex
Дата добавления - 19.02.2016 в 16:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Установить и снять фильтр в 1 sub (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!