Работа с автофильтром(очень срочно)
Вопрос.
Как пройтись только во видимым строкам, игнорируя скрытые. Я так понимаю, у автофильтра должно быть какое то свойство, возращающие скрытые, и наоборот не скрытые строки.
Имеет место быть огромная база данных в Ёкселе, да еще не почеловечески структурированная. Требуется определенные строки раскрасить в зависимости от значений, поменять цвет текста, нарисовать границы. Методом перебора всех строк прога виснет на довольно продолжительное время (даже при отключенном обновлении экрана). Есть возможность выделить изменяемые строки при помощи автофильтра.
Вопрос.
Как пройтись только во видимым строкам, игнорируя скрытые. Я так понимаю, у автофильтра должно быть какое то свойство, возращающие скрытые, и наоборот не скрытые строки.
Вот такая штука у меня получилась
Sheets(1).AutoFilter.Range.Cells.Font.ColorIndex = 7
То есть цвет меняется только у фильтрованных ячеек. Надеюсь я правильно понял problem?
Вот такая штука у меня получилась
Sheets(1).AutoFilter.Range.Cells.Font.ColorIndex = 7
То есть цвет меняется только у фильтрованных ячеек. Надеюсь я правильно понял problem?
Нет, не правильно. Это и так понятно, что будет менятся форматирование только видимых ячеек. Мне же надо проверить еще некоторые условия в видимых ячейках,прежде чем их раскрашивать. Проверять приходится построчно. И не хотелось бы тратить время на проверку порядка 3000 скрытых строк.
Нет, не правильно. Это и так понятно, что будет менятся форматирование только видимых ячеек. Мне же надо проверить еще некоторые условия в видимых ячейках,прежде чем их раскрашивать. Проверять приходится построчно. И не хотелось бы тратить время на проверку порядка 3000 скрытых строк.
Да-а! С автофитьтром в самом деле не так все просто. Я повозился немного, но ограничится только отфильтрованными ячейки не удалось.
Для скорости предлагаю такой вариант - не фильтровать, а сортировать по твоему критерию выборки (да-нет или 0-1), и работать построчно сначала и до первой не удовлетворяющей строки.
Довольно коряво, но скорость будет удовлетворительная.