При импорте и копировании таблиц в Excel могут формироваться пустые строки и ячейки. Они мешают работе, отвлекают.
Некоторые формулы могут работать некорректно. Использовать ряд инструментов в отношении не полностью заполненного диапазона невозможно. Научимся быстро удалять пустые ячейки в конце или середине таблицы. Будем использовать простые средства, доступные пользователю любого уровня.
Как в таблице Excel удалить пустые строки?
Чтобы показать на примере, как удалить лишние строки, для демонстрации порядка действий возьмем таблицу с условными данными:
Пример 1. Сортировка данных в таблице. Выделяем всю таблицу. Открываем вкладку «Данные» — инструмент «Сортировка и фильтр» — нажимаем кнопку «Сортировка». Или щелкаем правой кнопкой мыши по выделенному диапазону и делаем сортировку «от минимального к максимальному».
Пустые строки после сортировки по возрастанию оказываются внизу диапазона.
Если порядок значений важен, то до сортировки необходимо вставить пустой столбец, сделать сквозную нумерацию. После сортировки и удаления пустых строк вновь отсортировать данные по вставленному столбцу с нумерацией.
Пример 2. Фильтр. Диапазон должен быть отформатирован как таблица с заголовками. Выделяем «шапку». На вкладке «Данные» нажимаем кнопку «Фильтр» («Сортировка и фильтр»). Справа от названия каждого столбца появится стрелочка вниз. Нажимаем – открывается окно фильтрации. Снимаем выделение напротив имени «Пустые».
Таким же способом можно удалить пустые ячейки в строке Excel. Выбираем нужный столбец и фильтруем его данные.
Пример 3. Выделение группы ячеек. Выделяем всю таблицу. В главном меню на вкладке «Редактирование» нажимаем кнопку «Найти и выделить». Выбираем инструмент «Выделение группы ячеек».
В открывшемся окне выбираем пункт «Пустые ячейки».
Программа отмечает пустые ячейки. На главной странице находим вкладку «Ячейки», нажимаем «Удалить».
Результат – заполненный диапазон «без пустот».
Внимание! После удаления часть ячеек перескакивает вверх – данные могут перепутаться. Поэтому для перекрывающихся диапазонов инструмент не подходит.
Полезный совет! Сочетание клавиш для удаления выделенной строки в Excel CTRL+«-». А для ее выделения можно нажать комбинацию горячих клавиш SHIFT+ПРОБЕЛ.
Как удалить повторяющиеся строки в Excel?
Чтобы удалить одинаковые строки в Excel, выделяем всю таблицу. Переходим на вкладку «Данные» — «Работа с данными» — «Удалить дубликаты».
В открывшемся окне выделяем те столбцы, в которых находятся повторяющиеся значения. Так как нужно удалять повторяющиеся строки, то должны быть выделены все столбцы.
После нажатия ОК Excel формирует мини-отчет вида:
Как удалить каждую вторую строку в Excel?
Проредить таблицу можно с помощью макроса. Например, такого:
А можно ручками. Предлагаем простенький способ, доступный каждому пользователю.
- В конце таблицы делаем вспомогательный столбец. Заполняем чередующимися данными. Например, «о у о у о у» и т.д. Вносим значения в первые четыре ячейки. Потом выделяем их. «Цепляем» за черный крестик в правом нижнем углу и копируем буквы до конца диапазона.
- Устанавливаем «Фильтр». Отфильтровываем последний столбец по значению «у».
- Выделяем все что осталось после фильтрации и удаляем.
- Убираем фильтр – останутся только ячейки с «о».
Вспомогательный столбец можно устранить и работать с «прореженной таблицей».
Как удалить скрытые строки в Excel?
Однажды пользователь скрыл некую информацию в строках, чтобы она не отвлекала от работы. Думал, что впоследствии данные еще понадобятся. Не понадобились – скрытые строки можно удалить: они влияют на формулы, мешают.
В тренировочной таблице скрыты ряды 5, 6, 7:
Будем их удалять.
- Переходим на «Файл»-«Сведения»-«Поиск проблем» — инструмент «Инспектор документов».
- В отрывшемся окне ставим галочку напротив «Скрытые строки и столбцы». Нажимаем «Проверить».
- Через несколько секунд программа отображает результат проверки.
- Нажимаем «Удалить все». На экране появится соответствующее уведомление.
В результате проделанной работы скрытые ячейки удалены, нумерация восстановлена.
Таким образом, убрать пустые, повторяющиеся или скрытые ячейки таблицы можно с помощью встроенного функционала программы Excel.
При составлении таблиц в Microsoft Excel и работе с формулами часто образуются пустые строки, которые проблематично убрать. В данной статье будут описаны самые распространенные методы их удаления.
Содержание
- Как НЕ НАДО удалять пустые строки в Excel
- Формула для удаления пустых строк в Excel
- Как удалить пустые строки в Excel с помощью Power Query
- Как удалить строки, если ячейка в определенном столбце пуста
- Как удалить лишние строки под данными или скрыть их
- Как быстро удалить пустые строки в Excel с помощью VBA
- Макрос 1. Удалить пустые строки в выбранном диапазоне
- Макрос 2. Удалить все пустые строки в Excel
- Макрос 3. Удалить строку, если ячейка пуста
- Как добавить макрос в свою книгу
- Как удалить пустые строки в Excel с помощью сортировки
- Как удалить пустые строки в Excel с помощью фильтрации
- Как убрать пустые строки в Excel с помощью выделения группы ячеек
- Как удалить пустые строки в Экселе с помощью вспомогательного столбца
- Заключение
Как НЕ НАДО удалять пустые строки в Excel
Удаление пустых строк не рекомендуется выполнять через раздел «Найти и выделить». Данная команда удаляет сразу всю строку, в которой есть пустоты. В таком случае ячейки с нужной информацией также пропадут. Инструмент «Найти и выделить» актуален, когда пустой получилась целая строчка в таблице, и ее необходимо удалить. В такой ситуации необходимо проделать следующие шаги:
- Выделить пустую строчку с помощью мыши.
- Перейти в раздел «Найти и выделить».
- Кликнуть по пункту «Перейти к специальному».
- Нажать ЛКМ по слову «Пробел». После этого пустота должна исчезнуть, и таблица преобразится.
В Эксель пустые строки могут удаляться посредством сортировки таблицы либо установления фильтра. Однако такой способ также может привести к полному удалению строки с заполненными ячейками. Причем пострадать могут и соседние строчки или столбцы.
Обратите внимание! В Excel нельзя удалять пустые строки, выбирая отдельные ячейки в таблице во избежание потери важной информации. Лучше воспользоваться другими методами, которые будут описаны далее.
Формула для удаления пустых строк в Excel
Для выполнения поставленной задачи можно воспользоваться специальной формулой, которая работает во всех версиях программы: =ЕСЛИ(СЧЕТЗ(A2:E2)=0;»Пусто»;»»). А2 и Е2 — это первая и последняя ячейки строки, в которой необходимо убрать пустоты. Аналогичным образом выражение применяется для любого столбца таблицы. Пользователю необходимо поставить курсор мыши в свободную ячейку и прописать данную формулу в строке сверху главного меню. Далее эту формулу потребуется растянуть для всех строк или столбцов таблицы, зажав ЛКМ крестик в правом нижнем углу первой ячейки. После таких манипуляций пустые строчки пропадут.
Как удалить пустые строки в Excel с помощью Power Query
Power Query — это специальный инструмент, который присутствует в версиях Excel, начиная с 2013 года.
Важно! Такой инструмент изменяет форматирование таблицы, заливку ячеек, их размер, ориентацию.
Чтобы удалить пустые ячейки в таблицы, необходимо выполнить несколько простых шагов по алгоритму:
- Выделить манипулятором строчку или столбик, в котором есть пустоты, требующие деинсталляции.
- В интерфейсе Excel сверху перейти в раздел «Данные».
- В графе открывшихся параметров кликнуть по кнопке «Получить данные».
- В меню контекстного типа нажать по строке «Из других источников» и далее выбрать вариант «Из таблицы/диапазона». Теперь откроется небольшое меню, где надо поставить галочку рядом с параметром «Таблица с заголовком» и щелкнуть по «ОК».
- Изучить интерфейс открывшегося редактора Power Query.
- Кликнуть ЛКМ по кнопке «Удалить строки» в верхней части раздела.
- В контекстном меню нажать по «Удалить пустые строки».
- Щелкнуть по кнопке «Закрыть и загрузить».
- Проверить результат. После проделывания вышеизложенных манипуляций окно редактора должно закрыться, и в таблице пропадут пустые ячейки.
Дополнительная информация! После реализации рассмотренного способа формат отображения дат и чисел в таблице изменится.
Как удалить строки, если ячейка в определенном столбце пуста
После построения в некоторых столбцах таблицы могут появиться единичные пустые ячейки. От них легко избавиться методом пробелов, рассмотренного в начале статьи. В данной ситуации такой способ деинсталляции можно применить. Действовать нужно следующим образом:
- Нажать ПКМ по названию столбика, в котором есть пустоты.
- В контекстном меню нажать на «Выделить» и в следующем окне указать «Пустые ячейки». После закрытия окошка в выбранном столбце выделятся только пустоты, а ячейки с информацией останутся незатронутыми.
- Щелкнуть ПКМ по любой выделенной ячейки и нажать по строчке «Удалить». Откроется небольшое окно, в котором надо поставить тумблер напротив поля «Строки», а затем кликнуть «ОК».
- Проверить результат. Строчки, в которых присутствовали пустые ячейки, должны полностью деинсталлироваться из таблицы. Как и говорилось выше, минус метода в том, что ячейки с информацией также удалятся.
Как удалить лишние строки под данными или скрыть их
В процессе заполнения таблицы в Excel часто появляются пустые строки, в которых, на самом деле, прописана скрытая информация. Лишние ячейки возможно удалить следующим образом:
- Выделить пустую ячейку ЛКМ и зажать одновременно кнопки «Ctrl+Shift+End». Данная команда выделит оставшиеся ячейки, в которых на самом деле что-то написано.
- Кликнуть ПКМ по ячейке и в окошке контекстного типа выбрать вариант «Удалить».
- Проверить удалились ли лишние пустоты. Выбранные ячейки со скрытыми данными должны деинсталлироваться, как и в предыдущем методе.
Иногда пользователю не хочется удалять информацию из скрытых ячеек таблицы. В таком случае их можно скрыть. Скрытие строчек в Microsoft Office Excel осуществляется по следующей инструкции:
- Выделить ячейку под последней строкой с данными и зажать «Ctrl+Shift+End» для выделения оставшихся лишних пустот.
- После выделения всех пустот по любой из них надо кликнуть ПКМ и щелкнуть по варианту «Скрыть».
- Можно зажать кнопки «Ctrl+9» для скрытия лишних ячеек.
- Зажать «Ctrl+Shift+9», если пустоты нужно будет опять сделать видимыми.
Как быстро удалить пустые строки в Excel с помощью VBA
VBA — это специальный язык программирования, предназначенный для автоматизации процессов в редакторах Microsoft Office. С его помощью можно будет в кратчайшие сроки удалить пустые ячейки в Excel, скопировав нужный код программы. Для реализации такого способа деинсталляции не обязательно быть программистом. Далее будет рассмотрено несколько команд, реализуемых на VBA в Эксель.
Макрос 1. Удалить пустые строки в выбранном диапазоне
Если выделить нужные строки и ввести данный код, то можно удалить все пустоты указанного диапазона. При этом пользователь не увидит никаких предупреждений, сообщений, всплывающих диалоговых окон и т.д. Увидеть код для удаления пустот в диапазоне можно на следующем изображении:
Чтобы ввести макрос в Excel на языке программирования VBA и запустить его, необходимо:
- Переключиться в раздел «Разработчик», находящийся в списке параметров сверху главного меню.
- Кликнуть по кнопке «Запись макроса».
- Скопировать код с изображения выше и ввести его в соответствующее поле.
- Сохранить изменения нажатием на «ОК».
- Для запуска программы необходимо перейти во вкладку «Макросы», выбрать нужный код по названию созданных, выделить диапазон, в котором предстоит удалить пустоты, и кликнуть «ОК».
Важно! Созданный макрос сохранится в Excel, и его не нужно будет вводить каждый раз для выполнения конкретного действия.
Макрос 2. Удалить все пустые строки в Excel
С помощью написанного кода можно деинсталлировать сразу все пустоты, которые находятся на активном листе Эксель. Для этого используется следующий код:
Макрос 3. Удалить строку, если ячейка пуста
Это метод пробелов, который был описан выше, реализуемый с помощью кода. Данный способ позволяет удалить всю строку, в которой присутствует одна или несколько пустых ячеек, а также избавиться от лишних строк. Представленный код будет выглядеть так:
Перед запуском любого кода в Excel рекомендуется создать копию своей работы во избежание утери важных сведений в случае допущения ошибки.
Как добавить макрос в свою книгу
Для записи кодов в Excel создается своя книга. Выше был рассмотрен альтернативный метод создания и запуска макросов. Есть еще один способ, который заключается в выполнении следующих шагов:
- Открыть лист, в котором нужно удалить какие-либо ячейки.
- Зажать клавиши «Alt+F11», чтобы запустить встроенный редактор «Visual Basic».
- В графе параметров слева открывшегося окошка нажать по слову «Insert», а затем перейти во вкладку «Module».
- Вставить нужный код программы в отобразившееся окошко.
- Щелкнуть по F5, чтобы проверить код на работоспособность.
- Кликнуть по кнопке «Сохранить» для добавления макроса в свою книгу.
Дополнительная информация! Чтобы активировать созданный макрос в следующий раз, необходимо зайти в книгу, выбрать соответствующую таблицу, зажать «Alt+F8» с клавиатуры, выбрать нужный код и щелкнуть по кнопке «Выполнить».
Как удалить пустые строки в Excel с помощью сортировки
Сортировка данных в таблице помогает удалить пустоты. Данная операция выполняется по алгоритму:
- Выделить нужный диапазон ячеек ЛКМ.
- Перейти в раздел «Данные» сверху главного меню программы и кликнуть по кнопке «Сортировка».
- В следующем меню выбрать столбец для отсортировки информации в нем и нажать «ОК».
- Убедиться, что таблица отсортирована. Пустые строки расположатся под таблицей. Их при необходимости можно будет удалить.
Как удалить пустые строки в Excel с помощью фильтрации
Процесс выполнения поставленной задачи подразделяется на следующие этапы:
- Аналогичным образом выделить таблицу и переключиться в раздел «Данные» сверху окна программы.
- Теперь вместо сортировки нажать на кнопку «Фильтр».
- В появившемся окошке надо поставить галочку напротив значения «(Пустые)».
- Проверить, что все пустые ячейки в табличке выделились и удалить их стандартным методом, рассмотренным выше.
Перед выполнением способа фильтрации данных понадобится выделить весь диапазон таблицы, иначе фильтрация будет осуществляться только до первой пустоты.
Обратите внимание! Для деинсталляции пустых ячеек рассмотренным выше способом пользователю потребуется аккуратно отфильтровать каждый столбец в таблице, чтобы не удалить нужную информацию.
Как убрать пустые строки в Excel с помощью выделения группы ячеек
В Эксель есть встроенный инструмент, с помощью которого можно группами выделять ячейки. С его помощью удаление пустот производится по алгоритму:
- Выделить всю таблицу ЛКМ.
- Кликнуть по значку лупы графе вкладок сверху окна программы. Это меню «Найти и выделить».
- В контекстном меню щелкнуть по строчке «Выделить группу ячеек…».
- В отобразившемся окне поставить тумблер в поле «Пустые ячейки» и щелкнуть по «ОК». В таблице выделятся все пустоты.
- Удалить строку методом пробелов и проверить результат.
Как удалить пустые строки в Экселе с помощью вспомогательного столбца
Для деинсталляции пустот рядом с таблицей можно создать столбец, который будет выступать в роли вспомогательного элемента. Это один из самых быстрых и надежных способов удаления. Чтобы реализовать данный метод, требуется выполнить несколько простых манипуляций по пошаговой инструкции:
- Создать справа от исходной таблицы еще один столбик и назвать его, к примеру, «Пустая строка», чтобы не путаться в дальнейшем.
- Записать формулу «Считать пустоты», указав соответствующий диапазон, в котором программа выполнит проверку на наличие пустых строк.
- Когда пустые строчки будут обнаружены, их останется только выделить и деинсталлировать.
Важно! Данная формула выглядит следующим образом: «=СЧИТАТЬПУСТОТЫ(А6:D6)». Вместо букв в скобках указывается диапазон ячеек.
Заключение
Таким образом, существует несколько способов удаления пустых строк в Microsoft Excel, каждый из них актуален для конкретного случая. Чтобы разбираться в теме, необходимо внимательно ознакомиться с вышеизложенной информацией.
Оцените качество статьи. Нам важно ваше мнение:
Таблицы, в которых присутствуют пустые строки, выглядят не очень эстетично. К тому же, из-за лишних строк навигация по ним может усложниться, так как придется прокручивать больший диапазон ячеек для перехода из начала таблицы в конец. Давайте выясним, какие существуют способы удаления пустых строк в программе Microsoft Excel, и как их убрать быстрее и проще.
Стандартное удаление
Самым известным и популярным способом удаления пустых строк, является использование контекстного меню программы Эксель. Чтобы убрать строки таким способом, выделяем диапазон ячеек, который не содержит данных, и кликаем правой кнопкой мыши. В раскрывшемся контекстном меню делаем переход по пункту «Удалить…». Можно не вызывать контекстное меню, а набрать на клавиатуре сочетание клавиш «Ctrl+-».
Появляется небольшое окошко, в котором нужно указать, что конкретно мы хотим удалить. Выставляем переключатель в позицию «строку». Жмем на кнопку «OK».
После этого, все строки выделенного диапазона будут удалены.
Как альтернативный вариант, можно выделить ячейки в соответствующих строках, и находясь во вкладке «Главная», кликнуть по кнопке «Удалить», которая расположена в блоке инструментов «Ячейки» на ленте. После этого, сразу произойдет удаление без дополнительных диалоговых окон.
Конечно, способ очень простой и известный. Но, является ли он самым удобным, быстрым и безопасным?
Сортировка
Если пустые строки расположены в одном месте, то их удаление будет довольно легким. Но, если они раскиданы по всей таблице, то их поиск и удаление может занять значительное время. В этом случае, должна помочь сортировка.
Выделяем всю табличную область. Кликаем по ней правой кнопкой мыши, и в контекстном меню выбираем пункт «Сортировка». После этого, появляется ещё одно меню. В нём нужно выбрать один из следующих пунктов: «Сортировка от А до Я», «От минимального к максимальному», или «От нового к старому». Какой именно из перечисленных пунктов будет находиться в меню, зависит от типа данных, которые размещены в ячейках таблицы.
После того, как вышеуказанная операция будет проделана, все пустые ячейки переместятся в самый низ таблицы. Теперь, мы можем удалить эти ячейки любым из тех способов, о которых шла речь в первой части урока.
Если критически важен порядок размещения ячеек в таблице, то перед тем как совершить сортировку, вставляем в середину таблицы ещё один столбец.
Все ячейки этого столбца нумеруем по порядку.
Затем, производим сортировку по любому другому столбцу, и удаляем перемещенные вниз ячейки, как уже описывалось выше.
После этого, чтобы вернуть порядок строк к тому, который уже был перед сортировкой, проводим сортировку в колонке с номерами строк «От минимального к максимальному».
Как видим, строки выстроились в прежнем порядке, исключая пустые, которые удалены. Теперь, нам осталось только удалить добавленный столбец с порядковыми номерами. Выделяем этот столбец. Затем кликаем по кнопке на ленте «Удалить». В раскрывшемся меню выбираем пункт «Удалить столбцы с листа». После этого, нужный столбец будет удален.
Урок: Сортировка в Microsoft Excel
Применение фильтра
Ещё одним вариантом скрыть пустые ячейки является применение фильтра.
Выделяем всю область таблицы, и, располагаясь во вкладке «Главная», делаем клик по кнопке «Сортировка и фильтр», которая расположена в блоке настроек «Редактирование». В появившемся меню, делаем переход по пункту «Фильтр».
В ячейках шапки таблицы появляется характерный значок. Кликаем по этому значку в любом на ваш выбор столбце.
В появившемся меню, снимаем галочку с пункта «Пустые». Жмем на кнопку «OK».
Как видим, после этого, все пустые строки исчезли, так как они были отфильтрованы.
Урок: Как использовать автофильтр в Microsoft Excel
Выделение ячеек
Ещё один способ удаления использует выделение группы пустых ячеек. Чтобы использовать этот способ, сначала выделяем всю таблицу. Затем, находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая расположена на ленте в группе инструментов «Редактирование». В появившемся меню, кликаем по пункту «Выделение группы ячеек…».
Открывается окно, в котором переставляем переключатель в позицию «пустые ячейки». Жмем на кнопку «OK».
Как видим, после этого, все строки, содержащие пустые ячейки, выделились. Теперь жмем на уже знакомую нам кнопку «Удалить», расположенную на ленте в группе инструментов «Ячейки».
После этого, все пустые строки будут удалены из таблицы.
Важное замечание! Последний способ нельзя использовать в таблицах с перекрывающимися диапазонами, и с пустыми ячейкам, которые находятся в строках, где имеются данные. В этом случае, может произойти смещение ячеек, и таблица нарушится.
Как видим, существует несколько способов удаления пустых ячеек из таблицы. Каким именно способом лучше воспользоваться, зависит от сложности таблицы, и от того, как именно по ней разбросаны пустые строки (располагаются одним блоком, или перемешаны со строками, заполненными данными).
history 24 апреля 2013 г.
- Группы статей
- Вывод отобранных значений в отдельный диапазон
- Отбор строк в таблице
- Пустые ячейки
Если список значений содержит пропуски (пустые ячейки), то это может существенно затруднить его дальнейший анализ. С помощью формул уберем пустые ячейки из колонки с данными. Также напишем формулу, чтобы удалить нули из списка значений. В конце статьи научимся удалять вообще любое заданное значение из списка: символ, число, текстовую строку.
Пусть имеется список с
пустыми
ячейками (столбец
А
).
Задача
Убрать пустые ячейки из списка, сформировав формулами список в соседнем столбце. То есть под словом «убрать» будем понимать не удаление значения из исходного списка, а формирование еще одного списка, но уже без лишних символов. Чтобы действительно убрать значения из списка нужно использовать макросы — программу на VBA.
Решение
Для избавления от пустых ячеек запишем в ячейке
B2
формулу массива
и скопируем ее вниз (см. файл примера): =ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$14);»»;СТРОКА($A$2:$A$14));СТРОКА(A1)));»»)
Получим в соседнем столбце
B
список со значениями из исходого, но уже без пропусков. Формула работает одинакового и для текстовых значений и для чисел. Алгоритм работы формулы следующий:
-
ЕСЛИ(ЕПУСТО($A$2:$A$14);»»;СТРОКА($A$2:$A$14)) – если ячейка не пуста, то эта часть формулы возвращает номер строки. То есть формируется массив номеров строк, НЕ содержащих пустоты {2:»»:4:5:6:»»:»»:9:10:»»:»»:13:14} На месте пустых ячеек в массиве будет символ «» (пустой текст), но можно его заменить в формуле на любую текстовую строку, например «ккк». Проверить результат можно выделив эту часть формулы и нажав
клавишу
F9
; - Функция НАИМЕНЬШИЙ() сортирует массив строк по возрастанию. В сортированном списке сначала будут идти номера строк затем значения «», т.к. в EXCEL считается, что любое текстовое значение больше любого числа (значение пустой текст — текстовое значение);
-
Далее для функции ДВССЫЛ() формируются адреса ячеек с непустыми значениями. Например, ДВССЫЛ(«A»&2) возвращает значение из ячейки
А2
. Для пустых ячеек будет формироваться ошибочные адреса ячеек, состоящие только из символа А. Это вызовет ошибку после применения функции ДВССЫЛ(); - Функция ЕСЛИОШИБКА() вместо ошибки будет возвращать «». Этот символ не отображается в ячейке и ячейка выглядит пустой.
На самом деле в соседнем столбце
B
список будет отличаться не только тем, что в нем значения будут идти подряд без пропусков. Если в исходном списке пустые ячейки действительно не содержали ничего, то в новом списке в пустых ячейках будут значения Пустой текст «». Хотя внешний вид пустых ячеек из обоих списков будет неотличим, но формулы увидят разницу. То есть, если Вы планируете делать дальнейшие манипуляции с новым списком, то имейте ввиду, что теперь пустые ячейки в конце списка теперь не совсем пусты — они содержат текстовое значение «». Подробнее про это специфическое значение читайте
здесь
.
Изменим немного формулу: =ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ( ЕПУСТО($A$2:$A$14);»»;$A$2:$A$14);СТРОКА(A1));»»)
Получим тот же список, но еще и
сортированный
по возрастанию (работает только для чисел).
Список также можно сформировать в столбце С другой
формулой массива
:
=ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО(СписокСпропусками);»»;СТРОКА(СписокСпропусками));СТРОКА()-СТРОКА($C$1)));»»)
СписокСпропусками
в формуле — это
динамический диапазон
, который образован формулой:
=СМЕЩ($A$2;;;ДлинаСпискаСпропусками)
Длину списка с пропусками
можно вычислить с помощью формулы:
=ПОИСКПОЗ(ПОВТОР(«я»;10);$A$2:$A$14;1)
СОВЕТ:
Для удаления и выделения пустых строк и ячеек традиционными средствами EXCEL, пользуйтесь идеями из статей
Удаляем пустые строки в таблице
и
Выделение группы ячеек
. О том, что EXCEL понимает под пустыми ячейками, читайте в статье
Подсчет пустых ячеек
.
Удаляем заданные символы из списка
Часто в списке присутствуют ненужные для дальнейшего анализа значения, например 0 (нуль).
Немного модернизировав вышеуказанную формулу получим универсальный подход для удаления вообще любого символа, числа или текстовой строки из исходного списка (см. файл примера, в котором на листе Произвольный символ приведена универсальнаяформула).
Пусть исходный список находится в диапазоне A12:A24, а в ячейке B6 содержится значение которое нужно удалить из ячеек списка.
=ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ($A$12:$A$24=$B$6;»»;СТРОКА($A$12:$A$24));СТРОКА()-СТРОКА($A$11)));»»)
Единственным отличием является выражение $A$12:$A$24=$B$6, которое заменило формулу с ЕПУСТО(…)
Теперь если значение в исходном списке не равно искомому значению, то вместо него будет выведено значение «» (в конце списка).
Skip to content
Это руководство научит вас нескольким простым приемам безопасного удаления нескольких пустых строк в Excel без потери информации.
Пустые строки в таблице — это проблема, с которой мы все время от времени сталкиваемся, особенно при объединении данных из разных источников или импорте информации из каких-то отчетов. Они могут мешать вашим расчетам, портить внешний вид таблицы, а их удаление вручную может быть длительным и подверженным ошибкам процессом.
В этой статье вы узнаете несколько простых и надежных методов удаления “белых пятен” на листах Excel.
- Как НЕ НАДО удалять пустые строки в Excel
- Как удалить пустые строки при помощи формул
- Использование Power Query
- Удаляем строки с определенными пустыми ячейками
- Как убрать или скрыть лишние строки под данными
- Как быстро удалить пустые строки при помощи VBA
- Макрос 1. Удаление в выбранном диапазоне
- Макрос 2. Удаляем все пустые строки
- Макрос 3. Критерий удаления — пустая ячейка
- Самый быстрый способ удалить пустые строки в Excel
Как НЕ НАДО удалять пустые строки в Excel
Есть несколько различных способов удаления пустых строк в Microsoft Excel. Но на удивление многие онлайн-ресурсы придерживаются в своих рекомендациях наиболее опасных из них.
Пожалуй, самый популярный совет – использовать инструмент «Найти и выделить» > «Перейти к специальному» > «Пробелы» .
Что плохого в этой технике? Она выбирает все пустоты в диапазоне данных. Но ведь в строке может быть, к примеру, только одна пустая ячейка, а в остальных будет записаны какие-то данные. И, следовательно, вы в итоге удалите множество строчек, которые содержат хотя бы одну пустую ячейку. Некоторые нужные данные, естественно, будут утеряны.
Специально не буду подробно описывать последовательность действий в этом методе, чтобы вы случайно его не повторили.
И ключевым в данном случае является вопрос: «Вы уверены, что все ячейки в вашей строке пустые? У вас точно нет таких, в которых по какой-то причине не заполнены одна или несколько ячеек, а остальные содержат данные?»
Просто запомните: «Не следует использовать метод поиска пустых ячеек, чтобы выделить и удалить пустые строки».
В качестве иллюстрации на изображении ниже слева показана исходная таблица, а справа — итоговая таблица. И в результирующей таблице все неполные строки пропали, даже 4,6 и 10, которые были частично заполнены:
Встречаются также предложения удалять незаполненные строки при помощи сортировки таблицы или установления фильтра.
Но здесь мы сталкиваемся с той же опасностью. Если вы упорядочите данные по какому-то столбцу, к примеру, от меньшего к большему, то строчки с пустыми ячейками в этом столбце окажутся в самом низу. Но где гарантия того, что в других столбцах правее или левее также отсутствует информация? А если таблица достаточно большая, то и проверить это не так просто.
В итоге вы опять же рискуете удалить данные, в которых случайно оказался пропуск именно в этом столбце.
С фильтрацией примерно та же история. Вы можете установить фильтр по пустым ячейкам в каком-то конкретном столбце. Далее все может произойти так же, как в истории с сортировкой. Какие-то из ячеек могут оказаться заполнены нужной информацией. Чтобы обезопасить себя от случайной её потери, такой фильтр по пустым ячейкам нужно установить в каждом столбце. Хорошо, если их в вашей таблице штук 5. А если 20? А 30? Вряд ли у вас есть желание устанавливать, а затем снимать даже 10 фильтров.
Поэтому эти методы – это также не наш выбор.
Итог: если вы не хотите испортить или потерять данные, никогда не удаляйте пустые строки, выбирая каким-то способом отдельные пустые ячейки в вашей таблице. Вместо этого используйте один из наиболее продуманных подходов, обсуждаемых ниже.
Формула для удаления пустых строк в Excel
Формулу мы будем использовать в дополнительном столбце, который лучше всего расположить справа от вашей таблицы. Поясним на примере.
У нас имеется таблица с заказами от различных покупателей. В ней имеются пропуски. Часть ячеек не заполнена. Давайте избавимся от пустых строк, но при этом сохраним все прочие данные.
Если вы хотите точно знать, что удаляете, то используйте следующую формулу:
=ЕСЛИ(СЧЁТЗ(A2:E2)=0;»Пусто»;»»)
Где A2 — первая, а E2 — последняя использованная ячейка первой строки данных.
Введите эту формулу в F2 или любой другой свободный столбец в строке 2 и перетащите маркер заполнения, чтобы скопировать формулу вниз.
В результате у вас будет записано «Пусто» в незаполненных строках и ничего, если есть хотя бы одна ячейка с данными:
Логика формулы очевидна: вы подсчитываете заполненные ячейки с помощью функции СЧЁТЗ и используете оператор ЕСЛИ для возврата «Пусто» для нулевого результата. Если же найдена хоть какая-то информация в нужном диапазоне, то не возвращаем ничего.
Фактически, вы можете обойтись без ЕСЛИ:
=СЧЁТЗ(A2:Е2)=0
В этом случае формула вернет ИСТИНА для пустых и ЛОЖЬ для заполненных строк.
Встречаются также аналогичные решения с использованием функции СЧИТАТЬПУСТОТЫ. В ней указываем диапазон ячеек и затем сравниваем с количеством столбцов.
=ЕСЛИ(СЧИТАТЬПУСТОТЫ(A2:E2)=ЧИСЛСТОЛБ(A2:E2);»Пусто»;»»)
Если достигнуто равенство, значит, число незаполненных клеток равно числу столбцов и данных в строке нет. Поэтому её можно пометить на удаление.
Как мы это удаление сделаем?
Разберем пошагово действия, как быстро удалить пустые строки:
- Выберите любую ячейку в заголовке и нажмите «Фильтр» на вкладке «Данные». Это добавит стрелки раскрывающегося списка фильтрации ко всем ячейкам заголовка.
- Щелкните стрелку в заголовке столбца формулы, снимите флажок (Выбрать все), выберите «Пусто» и нажмите ОК:
- Выделите всё отфильтрованное. Для этого щелкните самую верхнюю ячейку и нажмите Ctrl + Shift + End, чтобы расширить выделение до последней ячейки отфильтрованной области.
Или же щелкните по номеру первой незаполненной строки на вертикальной шкале координат. При этом вся она должна подсветиться. Затем наберите на клавиатуре комбинацию Ctrl
+ Shift
+
(стрелка вниз). При этом будет выделена вся область до конца таблицы. Поле этого кликните по выделению правой кнопкой мыши и выберите из контекстного меню пункт «Удалить». Все выделенные строки будут удалены.
Можно не вызывать контекстное меню, а просто набрать на клавиатуре сочетание клавиш Ctrl
и -
.
- Снимите фильтр, нажав
Ctrl
+Shift
+L
. Или же поставьте курсор в самую верхнюю позицию и вновь нажмите на иконку фильтра в меню «Данные». - Удалите столбец с формулой проверки, поскольку он вам больше не нужен.
В результате мы имеем чистую таблицу без пробелов, но с сохранением всей информации. Частично заполненные строки остались в таблице, мы их не потеряли.
Совет. Вместо удаления, вы можете скопировать непустые строки в другое место. Для этого отфильтруйте всё, кроме «Пусто», выделите и нажмите Ctrl
+ C
. Затем переключитесь на другой лист, выберите верхнюю левую ячейку целевого диапазона и нажмите Ctrl
+ V
.
Как удалить пустые строки в Excel с помощью Power Query
В Excel 2016 и Excel 2019 есть еще один способ удалить незаполненные строки — с помощью инструмента Power Query. В Excel 2010 и 2013 его можно загрузить как надстройку.
Важное примечание! Этот метод работает со следующим предостережением: Power Query преобразует ваши данные в таблицу Excel и изменяет форматирование, такое как цвет заливки, границы и некоторые числовые форматы. Если для вас важно форматирование исходных данных, то лучше выбрать другой способ удаления.
Итак, давайте по порядку.
- Выберите диапазон, в котором вы хотите заняться удалением.
- Перейдите на вкладку «Данные» и нажмите Получить данные — Из других источников — Из таблицы/диапазона . Это загрузит вашу таблицу в редактор Power Query.
- На вкладке Главная в редакторе Power Query щелкните Удалить строки > Удалить пустые …. (как на рисунке).
- Нажмите кнопку «Закрыть и загрузить». Полученная таблица загрузится на новый лист и закроется редактор запросов.
В результате этих манипуляций я получил следующую таблицу без прежних белых полос посреди данных, но с парой неприятных изменений — формат чисел утерян и даты отображаются в формате по умолчанию вместо пользовательского.
Как удалить строки, если ячейка в определенном столбце пуста
В начале этого урока мы предостерегали вас от удаления пустых строк путем выбора пробелов. Однако этот метод пригодится, если вы хотите удалить строки на основе пробелов в определенном столбце.
В качестве примера удалим все строки, в которых ячейка в столбце A не содержит никакой информации:
- Выберите ключевой столбец, в нашем случае столбец A.
- На вкладке «Главная» нажмите Найти и выделить > Перейти… > Выделить. Или просто нажмите
F5
и затем — Выделить… .
- В диалоговом окне выберите «Пробелы» и затем — «ОК». Это выделит все пустоты в столбце A.
- Щелкните правой кнопкой мыши любую выделенную ячейку и выберите «Удалить…» из контекстного меню.
- В диалоговом окне «Удалить» кликните «Строку» и нажмите «ОК».
Готово! Строки, которые не имеют данных в столбце A, больше не существуют.
Такого же результата можно добиться, отфильтровав пробелы в ключевом столбце.
Как удалить лишние строки под данными или скрыть их.
Иногда строки, которые выглядят совершенно пустыми, на самом деле могут содержать пробелы, перевод строки или непечатаемые символы. Чтобы проверить, действительно ли последняя ячейка с данными является последней использованной ячейкой на листе, нажмите Ctrl + End. Если это привело вас к визуально свободной от данных строке под вашими данными, то с точки зрения Excel, в ней на самом деле что-то записано. Чтобы удалить эти лишние строки под таблицей, сделайте следующее:
- Щелкните заголовок первой свободной строки под данными, чтобы выбрать ее целиком.
- Нажмите
Ctrl
+Shift
+End
. Это выберет все строчки ниже, которые содержат что-либо, включая пробелы и непечатаемые символы. - Щелкните выделение правой кнопкой мыши, как это мы уже делали ранее, и выберите «Удалить…».
Однако, удаление — это достаточно радикальный шаг. Поэтому, думаю, стоит поискать более «мягкие» варианты. К примеру, нет ничего, что могло бы помешать вам незаполненные строки либо столбцы просто скрыть. Вот простая инструкция:
- Выберите строку под последней строкой с данными, щелкнув ее заголовок.
- Нажмите
Ctrl
+Shift
+, чтобы расширить выделение до конца вниз.
- Нажмите
Ctrl
+9
чтобы скрыть выбранные строки. Или щелкните выделение правой кнопкой мыши и выберите «Скрыть».
Чтобы вновь показать ранее скрытое, нажмите Ctrl
+ A
, чтобы выделить весь лист, а затем нажмите Ctrl
+ Shift
+ 9
, чтобы снова сделать все видимым.
Аналогичным образом вы можете скрыть неиспользуемые столбцы справа от ваших данных.
Как быстро удалить пустые строки в Excel с помощью VBA
Excel VBA может исправить множество вещей, включая и несколько пустых строк. Лучшее в предлагаемом подходе — то, что он не требует никаких навыков программирования. Просто возьмите один из приведенных ниже кодов и запустите его в своем Excel.
Макрос 1. Удалить пустые строки в выбранном диапазоне.
Этот код VBA автоматически удаляет все пустые строки в выбранном диапазоне, не показывая пользователю никаких сообщений или диалоговых окон.
Макрос удаляет строку, только если вся она пуста . Он определяет количество ячеек с данными в каждой строке, а затем удаляет строки с нулевым результатом.
Public Sub DeleteBlankRows()
Dim SourceRange As Range
Dim EntireRow As Range
Set SourceRange = Application.Selection
If Not (SourceRange Is Nothing) Then
Application.ScreenUpdating = False
For I = SourceRange.Rows.Count To 1 Step -1
Set EntireRow = SourceRange.Cells(I, 1).EntireRow
If Application.WorksheetFunction.CountA(EntireRow) = 0 Then
EntireRow.Delete
End If
Next
Application.ScreenUpdating = True
End If
End Sub
Чтобы дать пользователю возможность выбрать целевой диапазон после запуска макроса, используйте этот код:
Public Sub RemoveBlankLines()
Dim SourceRange As Range
Dim EntireRow As Range
On Error Resume Next
Set SourceRange = Application.InputBox( _
"Выберите диапазон:", "Удалить пустые строки", _
Application.Selection.Address, Type:=8)
If Not (SourceRange Is Nothing) Then
Application.ScreenUpdating = False
For I = SourceRange.Rows.Count To 1 Step -1
Set EntireRow = SourceRange.Cells(I, 1).EntireRow
If Application.WorksheetFunction.CountA(EntireRow) = 0 Then
EntireRow.Delete
End If
Next
Application.ScreenUpdating = True
End If
End Sub
После запуска макрос показывает вам поле ввода, вы указываете целевой диапазон и нажимаете OK:
Через мгновение все лишние строки в выбранном диапазоне будут удалены, а оставшиеся сдвинутся вверх.
Макрос 2. Удалить все пустые строки в Excel
Чтобы массово удалить все пустые строки на активном листе, макрос находит последнюю строку используемого диапазона (т.е. содержащую последнюю ячейку с данными), а затем переходит вверх, удаляя строчки, в которых нет никакой информации:
Sub DeleteAllEmptyRows() Dim LastRowIndex As Integer Dim RowIndex As Integer Dim UsedRng As Range Set UsedRng = ActiveSheet.UsedRange LastRowIndex = UsedRng.Row - 1 + UsedRng.Rows.Count Application.ScreenUpdating = False For RowIndex = LastRowIndex To 1 Step -1 If Application.CountA(Rows(RowIndex)) = 0 Then Rows(RowIndex).Delete End If Next RowIndex Application.ScreenUpdating = True End Sub
Макрос 3. Удалить строку, если ячейка пуста.
С помощью этого макроса вы можете удалить всю строку, если ячейка в указанном столбце не содержит данных.
Этот код проверяет столбец A на наличие пробелов. Чтобы удалить строки на основе другого столбца, замените «A» другой соответствующей буквой.
Sub DeleteRowIfCellBlank()
On Error Resume Next
Columns("A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Важно! Макрос удаляет неиспользуемые строки со всего листа , поэтому будьте очень осторожны при его использовании. В качестве меры предосторожности может быть целесообразно создать резервную копию рабочего листа перед запуском этого макроса.
Чтобы удалить незаполненные строки в Excel с помощью макроса, вам нужно вставить код VBA в свою книгу.
Как добавить макрос в свою книгу?
Чтобы вставить макрос в книгу, выполните следующие действия:
- Откройте лист, на котором вы хотите произвести удаление.
- Нажмите
Alt
+F11
, чтобы открыть редактор Visual Basic. - На левой панели щелкните правой кнопкой мыши и выберите Insert > Module. Те же пункты можно выбрать вверху через главное меню.
- Вставьте код в появившееся окно кода.
- Нажмите F5 для запуска макроса (но вы можете сделать это и позже прямо из вашей книги).
- Нажмите кнопку «Сохранить». При этом вам будет предложено изменить формат вашей книги. Впрочем, запустить макрос на выполнение можно и без сохранения. Просто закройте окно Visual Basic и вернитесь к вашей таблице. Переходите сразу к пункту 3 ниже.
Чтобы выполнить макрос в рабочей книге Excel, сделайте следующее:
- Откройте свою собственную книгу и включите макросы, если будет предложено.
- Перейдите к нужной таблице.
- На листе нажмите
Alt
+F8
, выберите макрос и нажмите «Выполнить».
Вы можете запустить один из следующих макросов:
DeleteBlankRows — удаляет строки без данных в текущем выбранном диапазоне.
RemoveBlankLines — удаляет чистые строки и перемещается вверх в диапазоне, выбранном вами после запуска макроса.
DeleteAllEmptyRows — удаляет все незаполненные строки на активном листе.
DeleteRowIfCellBlank — удаляет строку, если ячейка в определенном столбце пуста.
Имейте в виду, что отменить удаление при помощи меню или же комбинации клавиш Ctrl+Z
в данном случае будет невозможно. Поэтому рекомендую перед использованием макросов позаботиться о сохранении резервной копии ваших данных.
Самый быстрый способ удалить пустые строки в Excel
Читая предыдущие примеры, разве не казалось, что мы используем кувалду, чтобы расколоть орех? Существует способ буквально в два клика мышки удалить пустые строки в Excel.
При помощи надстройки Ultimate Suite вы можете удалить все пустые строки на листе:
- На вкладке Ablebits Tools в группе Преобразование (Transform) нажмите Удалить пробелы (Delete Blanks) > Пустые строки (Empty Rows) :
- Надстройка сообщит вам, что все пустые строки будут удалены из активного листа, и попросит подтвердить. Нажмите ОК, и через мгновение все строки без данных будут удалены.
Как показано на скриншоте ниже, мы удалили только абсолютно пустые строки , в которых нет ни одной ячейки с данными:
Сравните это с первым рисунком, и вы без труда заметите те 3 строки, которые были удалены одним нажатием мышки. Согласитесь: это самый простой и быстрый способ удаления пустых строк среди всех прочих, рассмотренных в этой статье. Подробнее об инструменте удаления пустот в таблице вы можете прочитать здесь.
Чтобы узнать о других полезных функциях, включенных в надстройку Ultimate Suite, вы можете загрузить пробную версию.
Благодарю вас за чтение.