Здравствуйте, я пытаюсь в VBA вставить PageBreak при каждом появлении № 2 на листе. Мои таблицы могут содержать более 1000 (даже 10.000) строк, и я отфильтровал их с помощью фильтра:
ActiveSheet.Range("$A$1:$Q$443").AutoFilter Field:=1, Criteria1:="2", Operator:=xlAnd
В отфильтрованные строки мне нужно вставить PageBreak и рамку, чтобы ячейка содержала номер 2 (поэтому каждая новая страница должна начинаться с "2" в ячейке A).
Поскольку у меня много строк, я не мог использовать цикл (Do While или For-Next), потому что это занимает огромное время. Мне нужно решение, которое вставит PageBreak в отфильтрованных строках.
Я пробовал с «для каждой ячейки», но он не подходит для моих нужд, потому что он сканирует все ячейки в диапазоне ...
Кроме того, я пробовал с «Location.Offset (-1, 0) .Row», но на листах с 2000 или более строками для первых 5-6 экземпляров он работает нормально, а затем теряет фокус и место PageBreak на 2-3 строки раньше или после ячейки, где № 2.
Итак, мой вопрос заключается в том, насколько быстро цикл проходит через отфильтрованные строки и перед каждым или ставит разрыв страницы и границу
Спасибо за добавление