Я пытаюсь ускорить мой код VBA и не знаю, как это сделать. Самая медленная задача - мой цикл, чтобы скрыть пустые строки. (Я несколько сводных таблиц выровнены по вертикали, и мне пришлось оставить пространство, чтобы дать им возможность расширяться при добавлении новых данных.)Каков самый быстрый способ условного скрыть ряд строк в VBA?
Public Sub HideRows(list1 As Range)
Dim cell As Range
For Each cell In list1
cell.EntireRow.Hidden = (cell.Value = "")
Next cell
End Sub
Public Sub UnhideRows(list1 As Range)
Dim cell As Range
For Each cell In list1
If (cell.Value <> "") Then cell.EntireRow.Hidden = False
Next cell
End Sub
Как вы называете свои подделки 'HideRows' и' UnhideRows'? какие у вас диапазоны list1? дайте пример ... –
Call HideRows (Range («SHORTprcal»)), я делаю этот вызов четыре раза перед тем, как вернуться к Application.ScreenUpdating – iontom
Какой точный адрес диапазона - ваш «SHORTprcal»? –