Я создал макрос для удаления пустых столбцов с листа.
Как применить его ко всем листам?
Вот код для удаления столбцов:
Sub DeleteColumns()
Dim Col As Integer
With ActiveSheet.UsedRange
For Col = .Column + .Columns.Count - 1 To 1 Step -1
If IsEmpty(Cells(1048562, Col)) And IsEmpty(Cells(1, Col)) Then
If Cells(1048562, Col).End(xlUp).Row = 1 Then Columns(Col).Delete
End If
Next Col
End With
End Sub
И это тот, который я использовал для удаления пустых строк со всех рабочих листов.
Sub RemoveEmptyRows()
Dim row As Long
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
For row = 10 To 1 Step -1
If IsError(ws.Cells(row, 4)) Then
ws.Rows(row).Delete
ElseIf ws.Cells(row, 4).Value = "" Then
ws.Rows(row).Delete
End If
Next row
Next ws
End Sub