Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Фильтрация объединенных ячеек

411
23 октября 2006 года
Serzh
136 / / 09.07.2003
В столбце таблицы, по которому надо сделать фильтр, строки объединены по-парно (чтобы красиво показывался длинный текст с переносом по словам)
Так вот ежели написать команду таким образом

Selection.AutoFilter Field:=2, Criteria1:="*" + cf + "*"

то фильтруется правильно, но поскольку вторая из объединенных строк пустая, на экране высота нужной строки уменьшается в половину и вся красота идет на смарку.

Ежели добавить так

Selection.AutoFilter Field:=2, Criteria1:="=", _
Operator:=xlOr, Criteria2:="*" + cf + "*"
тогда в фильтр попадают не нужные строки, поскольку там вторая из объединенных строк пустая, а нужная строка показывается так как надо.

Вопрос: как обхитрить машину, чтобы и овцы были целы, и волки - сыты?
275
23 октября 2006 года
pashulka
985 / / 19.09.2004
Посмотрите здесь
411
02 ноября 2006 года
Serzh
136 / / 09.07.2003
Решение, на которое указывает pashulka - черечур мудреное...
Эдак можно просто добавить колонку параллельно, той по которой
надо будет фильтровать, но уже без объединения ячеек. Т.Е.
одной исходной ячейке будет соответствовать N-ячеек дополнительных
ячеек-строк. Значения во всех дополнительных ячейках надо сделать одинаковым со значением (даже при ручном вводе данных это легко с применением функции Worksheet_Change(), не говоря уже об автоматическом заполнении). Потом эту колонку дополнительных ячеек надо подставить под автофильтр вместо колонки с исходной информацией, ну и фильтруй себе на доброе здоровье... Единственная проблема может быть с тем чтобы скрыть отображение дополнительной колонки. Я попробовал в указаном примере скрыть колонку "B" перед этим установив автофильтр на все колонки - фильтр перестал работать от руки :-( ибо кнопка автофильтра по колонке "B" скрылась вместе с колонкой, а фильтр по колонке "A" (как следует из топика) и не должен был сработать...
А на автомате не проверял, может и сработает, если фильтровать не по "A", а все-таки по "B"
275
02 ноября 2006 года
pashulka
985 / / 19.09.2004
Цитата:
Решение, на которое указывает pashulka - черечур мудреное... © Serzh 02/11/2006



Во-первых, там наличествует два решения, а во-вторых, они оба достаточно простые.

Цитата:
Эдак можно просто добавить колонку параллельно, той по которой
надо будет фильтровать, но уже без объединения ячеек. Т.Е.
одной исходной ячейке будет соответствовать N-ячеек дополнительных
ячеек-строк. © Serzh 02/11/2006



Именно так и реализован первый вариант (просто добавлены некоторые нюансы, которые к описанному алгоритму не имеют отношения) и каждый сможет в этом убедиться воочию, если воспользуется опубликованной ссылкой.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог