Макрос для удаления пустых столбцов в книгах Excel
При выгрузке из 1С, часто файлы содержат пустые столбцы (в т.ч. и скрытые), которые мешают дальнейшей обработке данных. Приходится удалять их руками, что совсем не продуктивно. Макрос решит задачу мгновенно.
Копируйте код и сохраните его в Личной книге макросов.
Sub ColumnDel()
'Удаляем пустые столбцы
Dim i As Long
Dim rgMy1 As Range
Dim rgMy2 As Range
Set rgMy1 = Application.Range(ActiveSheet.Range("A1"), _
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell))
Application.ScreenUpdating = False
For i = 1 To rgMy1.Columns.Count
If WorksheetFunction.CountA(rgMy1.Columns(i).EntireColumn) = 0 Then
If rgMy2 Is Nothing Then
Set rgMy2 = rgMy1.Columns(i).EntireColumn
Else
Set rgMy2 = Application.Union(rgMy2, rgMy1.Columns(i).EntireColumn)
End If
End If
Next
If rgMy2 Is Nothing Then
MsgBox "Не найдено пустых столбцов", vbInformation, "Для информации"
Else:
rgMy2.[Delete]
End If
Application.ScreenUpdating = True
End Sub
Открыть редактор VBA Alt +F11:
Вызвать меню для выполнения или изменения макросов Alt + F8:
На выполнение макроса можно назначить "Горячие клавиши", нажав в окне Параметры:
В поле Сочетание клавиш введите прописные или строчные буквы, которые вы хотите использовать. Важен регистр и язык. Нельзя назначить макрос на функциональные клавиши Excel.
Для Windows сочетание клавиш для строчных букв — Ctrl + буква. Для прописных букв — Ctrl + Shift + БУКВА.
Для Mac сочетание клавиш для строчных букв — Option + Command + буква или Ctrl + буква. Для прописных букв — Ctrl + Shift + БУКВА.