Цитата |
---|
Юрий М написал: Радикально увеличить скорость работы макроса можно, работая не с ячейками листа (строками) поочерёдно, а собрав в массив (диапазон) номера нужных строк, и затем скрыв их одним махом. |
Согласен так будет еще быстрей, но не имея файла примера и полноценного описания желания в ТЗ, я предложил вариант первый пришедший мне в голову, и не претендую на лучший алгоритм.
Цитата |
---|
yoozhik написал: а в обработке массива в Вашем примере |
Я в моем примере не обрабатывал данные массивом. Использовался диапазон (range) - цикл по ячейкам листа. Ваш вариант имеет право жить.
Цитата |
---|
sergey2303 написал: как будет макрос, если на листе1, нужно брать для сравнения колонку F, а на листе2 колонку А |
.Cells(1, 1) - обращение к ячейке "A1", где (1, ) - строка, ( ,1) - поле (столбец)
Заменить для сравнения по колонке F
Set oRng = oSht1.Range(oSht1.Cells(1, 6), oSht1.Cells(Rows.Count, 6).End(xlUp))
Для более точного и правильного ответа
Приложите файл пример согласно правил форума, с частичными данными которые нужно обработать описанием желаемого результат.