Чтобы удалить лишние столбцы до конца листа, щёлкните по заголовку первого ненужного столбца, нажмите Ctrl+Shift+→ (выделение до последнего столбца XFD), затем правой кнопкой мыши по выделению → «Удалить». Пустые столбцы внутри таблицы удобно найти вспомогательной строкой с формулой =СЧЁТЗ(A1:A1000) — у пустого столбца она вернёт 0. Удалить все пустые столбцы листа или всей книги за раз можно макросом или бесплатной процедурой !SEMTools.
Нужно удалить пустые столбцы в Excel на одном листе или нескольких? Есть несколько простых способов избавиться от них. Опишу подробно.
Как удалить лишние столбцы до конца листа
- Щёлкните по букве первого ненужного столбца справа от таблицы.
- Нажмите Ctrl+Shift+→ — выделение протянется до последнего столбца листа (XFD). Если справа есть данные, нажмите сочетание ещё раз.
- Щёлкните правой кнопкой по выделенным заголовкам и выберите «Удалить» (или Ctrl+-).
- Сохраните книгу — полоса прокрутки и «последняя ячейка» (Ctrl+End) обновятся только после сохранения.
Само количество столбцов на листе от этого не уменьшится — в Excel их всегда 16 384. Но лишнее форматирование и «мусор» удалятся, файл станет легче, а прокрутка перестанет «убегать» вправо. Чтобы просто спрятать ненужные столбцы, выберите вместо «Удалить» команду «Скрыть».
Найти пустые столбцы в таблице формулой
Добавьте под таблицей строку с формулой СЧЁТЗ — она считает непустые ячейки в столбце. Где результат 0, столбец пустой:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Имя | Город | Сумма | |
| 2 | Анна | Москва | 1200 | |
| 3 | Олег | Казань | 800 | |
| 4 | 3=СЧЁТЗ(A1:A3) | 3=СЧЁТЗ(B1:B3) | 0=СЧЁТЗ(C1:C3) | 3=СЧЁТЗ(D1:D3) |
Столбец C пустой — СЧЁТЗ вернула 0. Чтобы выделить все такие столбцы разом: выделите строку с формулами, нажмите Ctrl+F, найдите 0 с параметрами «Область поиска: значения» и «Ячейка целиком», нажмите «Найти все», затем Ctrl+A. После этого «Главная → Удалить → Удалить столбцы с листа».
В английском Excel: =COUNTA(A1:A3)
Учтите: СЧЁТЗ считает непустыми и ячейки с формулой, возвращающей пустую строку "". Если такие есть, используйте =СУММПРОИЗВ(--(A1:A1000<>"")).
Код VBA для удаления пустых столбцов
Можно попробовать удалить пустые столбцы вручную, используя несложный VBA-код. Вот пример такого кода:
Sub Удалить_Пустые_Столбцы_Листа(s As Worksheet)
Dim lc As Long, i As Long
With s.UsedRange
lc = .Column + .Columns.Count - 1
End With
For i = lc To 1 Step -1
If WorksheetFunction.CountA(s.Columns(i)) = 0 Then s.Columns(i).Delete
Next i
End Sub
Sub Удалить_Пустые_Столбцы_Активного_Листа()
Удалить_Пустые_Столбцы_Листа ActiveSheet
End Sub
Sub Удалить_Пустые_Столбцы_Книги()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
Удалить_Пустые_Столбцы_Листа ws
Next ws
End Sub
Первая процедура удаляет пустые столбцы с указанного листа, вторая запускает её для активного листа, третья — для всех листов книги. Столбцы перебираются справа налево: при удалении слева направо соседний столбец «съезжал» бы на место удалённого и пропускался.
Как использовать код
Можно вставить код в VBA-модуль в открытой книге. Есть 2 сценария:
Записать макрос без действий, открыть его и вставить код туда.
Открыть редактор VBA сочетанием клавиш Alt+F11, а далее вставить модуль через меню Insert → Module. В пустое окно модуля уже вставить код выше.

Есть пара нюансов
- Код можно будет запустить, только если открыта книга, в которой он сохранён, что крайне неудобно
- Для сохранения кода не подходят обычные файлы формата xlsx. Придется поменять формат и использовать xlsm или xlsb.
Можно также использовать для хранения кода личную книгу макросов. Это чуть более удобное решение.
Удалить пустые столбцы в 2 клика с !SEMTools
Решения выше подходят и удобны, но если увлечься автоматизацией, количество формул и макросов увеличивается в прогрессии, а вместе с этим и время, затрачиваемое на поиск нужной формулы или макроса.
Эту проблему решает моя надстройка - в ней сотни маленьких решений расположены максимально интуитивно понятным способом.
Удалить пустые столбцы на листе
С помощью !SEMTools удалить пустые столбцы с активного листа очень просто. Достаточно выбрать нужную опцию в меню (УДАЛИТЬ - Диапазоны - Столбцы...), и всё — все пустые столбцы будут моментально удалены.

Удалить пустые столбцы в книге
Если пустые столбцы находятся на нескольких листах, !SEMTools позволяет удалить пустые столбцы со всех листов в книге.

Процедура доступна в бесплатной версии !SEMTools. Установите и пользуйтесь.
Почему пустые столбцы не удаляются
- После удаления полоса прокрутки всё так же длинная. Excel обновляет используемый диапазон только после сохранения книги. Сохраните файл и откройте снова.
- Столбец выглядит пустым, но не удаляется макросом. В нём есть пробел, пустая строка из формулы или скрытый символ. Проверьте СЧЁТЗ и ДЛСТР отдельных ячеек.
- Удалились столбцы с данными. Использовали «Выделить группу ячеек → пустые ячейки» и удалили столбцы — так удаляется каждый столбец, где есть хотя бы одна пустая ячейка. Отмените (Ctrl+Z) и воспользуйтесь способом с СЧЁТЗ.
- Команда «Удалить» неактивна. Лист защищён («Рецензирование → Снять защиту листа») или выделение пересекает умную таблицу и объединённые ячейки.
Удаление столбцов в Excel — частые вопросы
Как удалить ненужные столбцы до конца листа?
Выделите первый ненужный столбец, нажмите Ctrl+Shift+→, затем правой кнопкой → «Удалить» и сохраните книгу.
Как удалить все пустые столбцы в таблице?
Найдите их вспомогательной строкой с =СЧЁТЗ(A1:A1000) и удалите столбцы с нулём, запустите макрос из статьи или бесплатную процедуру !SEMTools.
Как удалить пустые столбцы на всех листах?
Макросом «Удалить_Пустые_Столбцы_Книги» из статьи или процедурой !SEMTools «Удалить пустые столбцы в книге».
Можно ли уменьшить число столбцов на листе?
Нет, на листе Excel всегда 16 384 столбца. Ненужные можно удалить (очистить) или скрыть.
Удалить все пустые столбцы на листе или сразу во всей книге можно в 2 клика с бесплатной версией !SEMTools — без макросов и вспомогательных формул.
!SEMTools решает эту и сотни других задач в пару кликов!
Итоги: как удалить пустые столбцы в Excel
| Задача | Способ |
|---|---|
| Лишние столбцы до конца листа | Ctrl+Shift+→ → Удалить → сохранить |
| Найти пустые столбцы в таблице | =СЧЁТЗ(A1:A1000) = 0 |
| Все пустые столбцы листа или книги | Макрос VBA или процедура !SEMTools |
| Временно убрать столбцы | Скрыть |
Надеюсь, на этой странице вы нашли то, что искали. Вас наверняка заинтересуют и похожие операции: удалить пустые строки и удаление диапазонов.