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

Вход

Регистрация

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

 

= Мир MS Excel/Автофильтр по заданную строку. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Автофильтр по заданную строку. (Макросы/Sub)
Автофильтр по заданную строку.
bumnik Дата: Вторник, 01.12.2015, 00:34 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 185
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007,2010
Здравствуйте! Подскажите, как установить макросом автофильтр по 31-ю строку? Фамилии добавляются на листе "БДМ №1", а сортировка на листе "Общий табель". Фильтр работает, но на весь столбец.
К сообщению приложен файл: 7547866.xlsm (85.5 Kb)


Сообщение отредактировал bumnik - Вторник, 01.12.2015, 00:34
 
Ответить
СообщениеЗдравствуйте! Подскажите, как установить макросом автофильтр по 31-ю строку? Фамилии добавляются на листе "БДМ №1", а сортировка на листе "Общий табель". Фильтр работает, но на весь столбец.

Автор - bumnik
Дата добавления - 01.12.2015 в 00:34
_Boroda_ Дата: Вторник, 01.12.2015, 01:21 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Как я уже в Вашей прошлой теме писал, автофильтр в Excel иногда излишне умен и сам ставит диапазон. Поэтому костыль такой - вставляем пустую 32-ю строку, ставим автофильтр и удаляем 32 строку.
Кусок Вашего кода переписываем так
[vba]
Код
    r_ = 31
    With Sheets("Общий табель")
         Application.EnableEvents = 0
        .Range("A" & r_ + 1).EntireRow.Insert
        If .Range("C5:C" & r_).AutoFilter Then
            .Range("C5:C" & r_).AutoFilter
        End If
        .Range("C6:C" & r_).AutoFilter Field:=1, Criteria1:="<>" , VisibleDropDown:=False
        .Range("A" & r_ + 1).EntireRow.Delete
        Application.EnableEvents = 1
    End With
[/vba]
К сообщению приложен файл: 7547866_1.xlsm (83.4 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеКак я уже в Вашей прошлой теме писал, автофильтр в Excel иногда излишне умен и сам ставит диапазон. Поэтому костыль такой - вставляем пустую 32-ю строку, ставим автофильтр и удаляем 32 строку.
Кусок Вашего кода переписываем так
[vba]
Код
    r_ = 31
    With Sheets("Общий табель")
         Application.EnableEvents = 0
        .Range("A" & r_ + 1).EntireRow.Insert
        If .Range("C5:C" & r_).AutoFilter Then
            .Range("C5:C" & r_).AutoFilter
        End If
        .Range("C6:C" & r_).AutoFilter Field:=1, Criteria1:="<>" , VisibleDropDown:=False
        .Range("A" & r_ + 1).EntireRow.Delete
        Application.EnableEvents = 1
    End With
[/vba]

Автор - _Boroda_
Дата добавления - 01.12.2015 в 01:21
bumnik Дата: Вторник, 01.12.2015, 01:33 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 185
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007,2010
_Boroda_, не работает.
 
Ответить
Сообщение_Boroda_, не работает.

Автор - bumnik
Дата добавления - 01.12.2015 в 01:33
_Boroda_ Дата: Вторник, 01.12.2015, 01:43 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
У меня работает и в 2010, и в 2007.
Вы что делаете? Заполняете любую ячейку в столбце D листа БДМ№1?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеУ меня работает и в 2010, и в 2007.
Вы что делаете? Заполняете любую ячейку в столбце D листа БДМ№1?

Автор - _Boroda_
Дата добавления - 01.12.2015 в 01:43
bumnik Дата: Вторник, 01.12.2015, 02:48 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 185
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007,2010
_Boroda_, Да. и если выбрать из списка со столбца С так же ошибка.
 
Ответить
Сообщение_Boroda_, Да. и если выбрать из списка со столбца С так же ошибка.

Автор - bumnik
Дата добавления - 01.12.2015 в 02:48
bumnik Дата: Вторник, 01.12.2015, 03:36 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 185
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007,2010
_Boroda_, заменил "r_ =" на "31" и всё Ок. Спасибоооо за помощь!!!!!!
 
Ответить
Сообщение_Boroda_, заменил "r_ =" на "31" и всё Ок. Спасибоооо за помощь!!!!!!

Автор - bumnik
Дата добавления - 01.12.2015 в 03:36
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Автофильтр по заданную строку. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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