Как сделать перенос текста на другую строку в Excel: полное руководство

Введение: почему перенос текста в Excel — это не так просто, как кажется

На первый взгляд, перенос текста на новую строку в Microsoft Excel или Google Таблицах — элементарная задача. Но любой, кто хотя бы раз пытался вписать в ячейку адрес с несколькими строками или список пунктов, знает: программа упорно игнорирует нажатие Enter. Вместо переноса курсор просто переходит на ячейку ниже. Эта особенность Excel становится головной болью для бухгалтеров, маркетологов и аналитиков, которые работают с большими текстовыми блоками.

Проблема усугубляется тем, что в разных версиях программы (2010, 2016, 2019, 365 или онлайн-версия) способы переноса могут отличаться. К тому же не все пользователи знают о скрытых настройках формата ячеек, которые напрямую влияют на отображение текста. Эта статья раскроет все рабочие методы — от базовых горячих клавиш до продвинутых приёмов с формулами и макросами.

Способ 1: горячие клавиши для ручного переноса (самый быстрый метод)

Если вам нужно срочно перенести текст внутри одной ячейки, используйте комбинацию клавиш. Это работает во всех версиях Excel, включая Excel 365 и Excel 2019:

  • 🔹 На Windows: поставьте курсор в нужное место текста и нажмите Alt + Enter.
  • 🍎 На Mac: используйте Control + Option + Enter (или Command + Option + Enter в новых версиях).
  • 🌐 В Google Таблицах: работает только Alt + Enter (как в Windows).

Этот метод идеален для разовых правок, но имеет ограничение: если позже вы измените ширину столбца, текст не будет автоматически перераспределяться — переносы останутся на тех же позициях, где вы их сделали вручную.

📊 Какую версию Excel вы используете чаще всего?
Excel 2010-2016
Excel 2019
Excel 365 (подписка)
Google Таблицы
Другая

Способ 2: автоматический перенос по ширине ячейки

Когда текст слишком длинный и не помещается в ячейке, Excel по умолчанию обрезает его или показывает в виде решётки (######). Чтобы заставить программу автоматически переносить слова при изменении ширины столбца:

  1. Выделите ячейку (или диапазон ячеек).
  2. Перейдите на вкладку Главная → группа Выравнивание.
  3. Нажмите кнопку Перенос текста (значок с изогнутой стрелкой).

Теперь текст будет переноситься динамически. Если вы сузите столбец, слова перейдут на новую строку, а если расширите — вернутся в одну строку. Этот метод не работает для текста, введённого через формулу (например, =A1&B1) — только для ручного ввода.

Выделили нужные ячейки|Нажали "Перенос текста" на вкладке "Главная"|Убедились, что высота строки изменилась автоматически|Проверили, что при сужении столбца текст переносится-->

Действие Результат в Excel Результат в Google Таблицах
Включён Перенос текста Текст переносится по словам, высота строки увеличивается Аналогично, но может потребоваться ручная настройка отступов
Выключен Перенос текста Текст обрезается или показывается как ###### Текст "вылезает" на соседние ячейки, если они пустые
Ручной перенос (Alt+Enter) Фиксированные переносы, не зависят от ширины столбца То же самое, но в формулах не работает

Способ 3: перенос текста с помощью формул (для продвинутых)

Если вам нужно перенести текст, который формируется через формулу (например, объединение нескольких ячеек), стандартный Перенос текста не сработает. Здесь поможет функция CHAR(10), которая вставляет символ переноса строки:

=A1 & CHAR(10) & B1

Но этого недостаточно — после ввода формулы нужно вручную включить перенос текста для ячейки (см. Способ 2). Пример использования:

  • 📌 Объединение ФИО из трёх ячеек с переносами:
    =A1 & CHAR(10) & B1 & CHAR(10) & C1
  • 📌 Перенос длинного текста через каждые 30 символов (требует функции ПСТР и НАЙТИ).

Ограничение: в Google Таблицах вместо CHAR(10) иногда приходится использовать CHAR(13) или их комбинацию.

Почему CHAR(10) не всегда работает?

В некоторых версиях Excel (особенно на Mac) символ переноса строки может кодироваться по-другому. Если CHAR(10) не сработал, попробуйте:

CHAR(13) — возврат каретки, CHAR(10) & CHAR(13) — комбинация.

Также проверьте, включён ли перенос текста для ячейки с формулой!

Способ 4: перенос текста в ячейке с сохранением форматирования

При ручном переносе (Alt+Enter) или использовании формул часто теряется форматирование (жирный шрифт, цвет и т.д.). Чтобы сохранить стили:

  1. Выделите ячейку и нажмите F2 (режим редактирования).
  2. Поставьте курсор в место будущего переноса.
  3. Используйте Alt+Enter для переноса.
  4. Примените форматирование (например, Ctrl+B для жирного) после переноса.

Если работаете с формулами, форматирование придётся настраивать отдельно для каждой части текста через Условное форматирование или вручную после вывода результата.

⚠️ Внимание: В Excel Online (браузерная версия) при копировании ячеек с ручными переносами (Alt+Enter) форматирование может сбрасываться. Всегда проверяйте результат после вставки!

Способ 5: перенос текста в сводных таблицах и отчётах

В сводных таблицах Excel перенос текста по умолчанию отключён, даже если он был включён в исходных данных. Чтобы исправить:

  1. Щёлкните правой кнопкой по ячейке сводной таблицы → Формат ячеек.
  2. Перейдите на вкладку Выравнивание.
  3. Отметьте галочку Переносить по словам.

Если текст в сводной таблице формируется через Вычисляемое поле, используйте функцию CHAR(10) внутри формулы поля. Пример:


=Имя & CHAR(10) & "Количество: " & СУММ(Количество)

После обновления сводной таблицы переносы сохранятся, но может потребоваться повторно включить опцию Перенос текста.

Способ 6: перенос текста в защищённых листах и книгах

Если лист защищён паролем, большинство способов переноса текста становятся недоступны. Решения:

  • 🔓 Временно снимите защиту: Рецензирование → Снять защиту листа.
  • 📝 Используйте Найти и заменить (Ctrl+H), чтобы заменить пробелы или запятые на CHAR(10) (предварительно создав столбец с формулой).
  • 🛠️ Для постоянного решения настройте Разрешить пользователям редактировать только определённые ячейки при защите листа.
⚠️ Внимание: В защищённых книгах (.xlsm с макросами) перенос текста через VBA может блокироваться политиками безопасности. Перед запуском макросов проверьте настройки Файл → Параметры → Центр управления безопасностью.

Способ 7: перенос текста с помощью VBA (для автоматизации)

Если вам нужно перенести текст в сотнях ячеек по одному правилу (например, после каждого запятого символа), поможет макрос. Пример кода для переноса через каждые 10 символов:


Sub AutoWrapText()

Dim rng As Range

Dim cell As Range

Dim newText As String

Dim i As Integer

Set rng = Selection

For Each cell In rng

newText = ""

For i = 1 To Len(cell.Value) Step 10

newText = newText & Mid(cell.Value, i, 10) & vbLf

Next i

cell.Value = Left(newText, Len(newText) - 1)

cell.WrapText = True

Next cell

End Sub

Как использовать:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите ячейки в Excel и запустите макрос (F5).

Для Google Таблиц аналогичную задачу решает функция REGEXREPLACE с регулярными выражениями.

FAQ: ответы на частые вопросы о переносе текста в Excel

Почему после переноса текст в ячейке отображается в одну строку?

Скорее всего, у вас отключён Перенос текста. Включите его на вкладке Главная или проверьте высоту строки — если она фиксированная, Excel не расширит её автоматически. Также убедитесь, что в ячейке нет пробелов перед текстом (они могут мешать переносу).

Как перенести текст в ячейке на iPad или Android?

В мобильных версиях Excel (Excel для iOS/Android) ручной перенос (Alt+Enter) не работает. Используйте:

  • 📱 Автоматический перенос: выделите ячейку → Главная → Перенос текста.
  • 📱 Ручной перенос: редактируйте текст в другом приложении (например, Заметки), добавляйте переносы, затем вставляйте обратно в Excel.

Можно ли сделать перенос текста в формуле СЦЕПИТЬ или CONCAT?

Да, но только с использованием CHAR(10). Пример:

=СЦЕПИТЬ(A1; CHAR(10); B1)

Не забудьте включить Перенос текста для ячейки с формулой! В Google Таблицах вместо СЦЕПИТЬ используйте &:

=A1 & CHAR(10) & B1

Как убрать лишние переносы строк в импортированных данных?

Используйте функцию ПОДСТАВИТЬ или СЖПРОБЕЛЫ:

=ПОДСТАВИТЬ(A1; CHAR(10); " ")

Для удаления всех непечатаемых символов (включая переносы):

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1; CHAR(10); " "); CHAR(13); " "))

Почему в печатной версии Excel переносы текста не отображаются?

Проблема связана с настройками печати. Проверьте:

  • 🖨️ Включён ли Перенос текста для ячеек.
  • 🖨️ На вкладке Разметка страницы нажмите Область печати → Печатаемые titles и убедитесь, что строки с переносами не обрезаются.
  • 🖨️ В параметрах принтера отключите опцию Масштабировать или установите Поместить не более чем на: 1 страницу по ширине.