Excel VBA Макросы: Удаление столбцов по условию.

Автор GhOsT, 10 июля 2018, 14:12

GhOsT

Мне надо удалить столбцы с условием что ниже 5-ой строки никаких данных в ячейках нет!

Администратор

Макрос просматривает столбцы с первого по десятый.

Макрос
Sub макрос()
   
    Dim lr As Long, j As Long
   
   
    ' Отключение монитора. Это ускорит макрос.
        ' Если много формул, то можно ещё отключить формулы.
    Application.ScreenUpdating = False
   
    ' Двигаемся по столбцам от 10 до 1.
    For j = 10 To 1 Step -1

        ' Поиск последней строки.
            ' End не ищет в скрытых строках.
        lr = Cells(Rows.Count, j).End(xlUp).Row
       
        ' Если ниже пятой строки нет данных.
        If lr < 6 Then
            ' Удаление столбца.
            Columns(j).Delete
        End If
       
    Next j
   
    ' Включение монитора.
    Application.ScreenUpdating = True
   
    ' Сообщение.
    MsgBox "Готово.", vbInformation

End Sub
[свернуть]

GhOsT