Возможности !SEMTools
↑ Навигация по задачам в Excel и возможностям надстройки !SEMTools ↑

Удалить пустые строки внутри ячейки Excel

Процедура доступна в !SEMTools Lite и Pro.

Пустые строки внутри ячейки Excel появляются, когда текст копируют из писем, сайтов и выгрузок CRM: между абзацами остаются двойные переносы, а в начале и в конце — лишние. Удалить их можно через «Найти и заменить» (Ctrl+J в поле поиска), формулой с ПОДСТАВИТЬ или, в Excel 365, =ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;ТЕКСТРАЗД(A2;СИМВОЛ(10))). Во всём диапазоне сразу и с переносами по краям это делает одна кнопка !SEMTools.

Удалить пустые строки внутри ячеек Excel: до и после
УДАЛИТЬ → Диапазоны → Строки внутри ячеек → Пустые: строки текста остались, пустые переносы исчезли

Не путайте с пустыми строками листа — если нужно удалить целые строки таблицы без данных, вам в статью о том, как удалить пустые строки в Excel.

Откуда в ячейке берутся пустые строки

Строка внутри ячейки — это текст между символами переноса. Excel вставляет такой символ, когда вы нажимаете Alt+Enter, и получает его вместе с данными при копировании. Пустая строка — это два переноса подряд или перенос в самом начале или конце ячейки. Откуда они берутся:

  • Копирование из почты и мессенджеров — абзацы разделены пустой строкой.
  • Выгрузки из CRM и интернет-магазинов — поля «Описание» и «Характеристики» с переносами по краям.
  • Объединение ячеек через перенос строки, когда часть ячеек была пустой.
  • Файлы из других систем, где перенос — это пара символов CR + LF (СИМВОЛ(13) и СИМВОЛ(10)).

Пустые строки раздувают высоту строк, мешают сравнивать значения и ломают подсчёт строк в ячейке.

Убрать пустые строки в ячейке через «Найти и заменить»

В поле поиска перенос строки вводится сочетанием Ctrl+J — курсор как будто исчезает, но символ там есть. Пустая строка — это два переноса подряд, поэтому:

  1. Выделите диапазон и нажмите Ctrl+H.
  2. В поле «Найти» нажмите Ctrl+J два раза.
  3. В поле «Заменить на» нажмите Ctrl+J один раз.
  4. Нажимайте «Заменить все», пока Excel не сообщит, что заменять больше нечего.

Почему несколько раз? Три переноса подряд за один проход превращаются в два, четыре — в два. Оговорюсь сразу: перенос в самом начале и в самом конце ячейки так не убрать, а строка из одних пробелов пустой для Excel не считается.

Удалить пустые строки внутри ячейки формулой

В любой версии Excel работает вложенная замена: ПОДСТАВИТЬ меняет двойной перенос на одинарный, а вложенность повторяет это для длинных серий. СИМВОЛ(10) — это перенос строки.

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;СИМВОЛ(13);"");СИМВОЛ(10)&СИМВОЛ(10);СИМВОЛ(10));СИМВОЛ(10)&СИМВОЛ(10);СИМВОЛ(10))

Внутренний ПОДСТАВИТЬ заодно убирает СИМВОЛ(13) из файлов с переносами формата Windows. Переносы по краям формула не трогает.

ТЕКСТРАЗД и ОБЪЕДИНИТЬ в Excel 365

В Excel 365 надёжнее разрезать ячейку на строки и склеить обратно, пропустив пустые. Второй аргумент ОБЪЕДИНИТЬ — ИСТИНА — как раз отвечает за пропуск пустых значений:

=ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;СЖПРОБЕЛЫ(ТЕКСТРАЗД(A2;СИМВОЛ(10))))

СЖПРОБЕЛЫ внутри превращает строки из пробелов в пустые, так что они тоже уходят. Побочный эффект: лишние пробелы внутри строк тоже схлопнутся. Переносы по краям исчезают сами.

Удалить пустые строки в ячейке
B2=ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;СЖПРОБЕЛЫ(ТЕКСТРАЗД(A2;СИМВОЛ(10))))
AB
1Текст с пустыми строкамиБез пустых строк
2Цвет: чёрный Размер: MЦвет: чёрный Размер: M=ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;СЖПРОБЕЛЫ(ТЕКСТРАЗД(A2;СИМВОЛ(10))))
3 Гарантия 2 года Возврат 14 днейГарантия 2 года Возврат 14 дней=ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;СЖПРОБЕЛЫ(ТЕКСТРАЗД(A3;СИМВОЛ(10))))
4Доставка 2–4 дня СамовывозДоставка 2–4 дня Самовывоз=ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;СЖПРОБЕЛЫ(ТЕКСТРАЗД(A4;СИМВОЛ(10))))

Формула работает в Excel 365 и Excel 2024. Чтобы перенос отображался, у ячейки должен быть включён «Перенос текста».

Удалить пустые строки во всех ячейках в 2 клика с !SEMTools

Формулы требуют вспомогательного столбца, протягивания и замены значениями, а «Найти и заменить» — нескольких проходов и не трогает края. В !SEMTools я сделал для этого отдельную процедуру:

  1. Выделите ячейки, столбец или весь диапазон с многострочным текстом.
  2. Откройте УДАЛИТЬ → Диапазоны → Строки внутри ячеек → Пустые.

Вуаля. Как это работает:

  • Удаляются пустые строки в любом месте ячейки: между строками, в начале и в конце.
  • Строка из одних пробелов тоже считается пустой.
  • Текст непустых строк не меняется, пробелы внутри них остаются как были.
  • Переносы CR + LF приводятся к обычному переносу строки.
  • Однострочные ячейки не затрагиваются.

Кстати, если после чистки остались одинаковые строки, их убирает соседняя кнопка — смотрите, как удалить повторяющиеся строки в ячейке.

Почему пустые строки в ячейке не удаляются — частые ошибки

  • «Найти и заменить» ничего не находит — в поле поиска остался обычный символ или пробел. Очистите поле клавишей Backspace и снова нажмите Ctrl+J.
  • Пустая строка не уходит — в ней есть пробелы или неразрывный пробел СИМВОЛ(160). Для формулы добавьте ПОДСТАВИТЬ(…;СИМВОЛ(160);" ").
  • Текст склеился в одну строку — вместо удаления пустых строк сработала функция ПЕЧСИМВ: она убирает все переносы подряд.
  • Переносы не видны после формулы — у ячейки выключен «Перенос текста» (Главная → Перенос текста).

Удалить пустые строки в ячейке — частые вопросы

Как убрать пустую строку внутри ячейки Excel?

Через «Найти и заменить»: в поле «Найти» дважды нажмите Ctrl+J, в поле «Заменить на» — один раз, затем «Заменить все». В Excel 365 — формулой =ОБЪЕДИНИТЬ(СИМВОЛ(10);ИСТИНА;ТЕКСТРАЗД(A2;СИМВОЛ(10))).

Как ввести перенос строки в поле «Найти»?

Сочетанием клавиш Ctrl+J. В поле ничего не отобразится, но символ переноса будет введён.

Как удалить перенос строки в начале ячейки?

В Excel 365 поможет формула с ТЕКСТРАЗД и ОБЪЕДИНИТЬ, в любой версии — процедура !SEMTools «Строки внутри ячеек → Пустые».

Как посчитать количество строк в ячейке?

Формулой =ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;СИМВОЛ(10);""))+1 — число переносов плюс один.

Удалить пустые строки внутри многострочных ячеек — между абзацами, в начале и в конце — можно одной кнопкой !SEMTools, сразу во всём диапазоне и без вспомогательных столбцов.
!SEMTools решает эту и сотни других задач в пару кликов!

Итоги: как удалить пустые строки в ячейке

Надеюсь, на этой странице вы нашли то, что искали, и смогли привести многострочный текст в порядок. Разово и на небольшом диапазоне хватит Ctrl+J в «Найти и заменить», если нет переносов по краям. Формула с ТЕКСТРАЗД в Excel 365 справится и с краями, но потребует отдельного столбца. Для регулярной чистки выгрузок быстрее !SEMTools — выделил, нажал, готово.

Вас наверняка заинтересуют и похожие операции: удалить лишние пробелы и удалить пустые строки листа.


Смотрите также по теме: