Гид по технологиям

Работа с текстом в Excel: TEXTSPLIT, TEXTBEFORE, TEXTAFTER

6 min read Excel Обновлено 08 Apr 2026
TEXTSPLIT, TEXTBEFORE, TEXTAFTER в Excel
TEXTSPLIT, TEXTBEFORE, TEXTAFTER в Excel

Кубики Scrabble выстроены на подставке над игровым полем

Excel предоставляет широкий набор функций для работы с текстом. В этой статье подробно объяснены синтаксис и практические приёмы для трёх современных функций: TEXTSPLIT, TEXTBEFORE и TEXTAFTER. Вы узнаете, когда применять каждую из них, какие подводные камни встречаются в реальных данных и как комбинировать функции для надёжных решений.

Что такое TEXTSPLIT

TEXTSPLIT разделяет текстовую строку на несколько ячеек по указанному разделителю. Результат возвращается как динамический массив — он «вытечёт» вправо (по столбцам) или вниз (по строкам) в зависимости от переданных разделителей.

Это современная альтернатива мастеру “Текст по столбцам” и фактическая противоположность TEXTJOIN, который объединяет элементы в одну строку.

Синтаксис

=TEXTSPLIT(text,col_delimiter,[row_delimiter],[ignore_empty],[match_mode],[pad_with])

Краткое описание параметров:

  • text — исходная строка или ссылка на ячейку.
  • col_delimiter — разделитель между столбцами (обязательный).
  • row_delimiter — разделитель между строками (опционально).
  • ignore_empty — TRUE/FALSE; игнорировать ли пустые элементы.
  • match_mode — 0 для чувствительного к регистру поиска, 1 для нечувствительного.
  • pad_with — значение для заполнения при «прямоугольной» матрице; по умолчанию #N/A.

Важно: единственными обязательными аргументами являются text и col_delimiter.

Примеры

Основной пример из исходного материала:

=TEXTSPLIT(B2,",")

Если в строке используются несколько типов разделителей:

=TEXTSPLIT(B2,{",",".",";"})

Здесь все возможные разделители перечислены в фигурных скобках как массив литералов.

Практические советы

  • Если исходные данные содержат лишние пробелы, используйте TRIM или TEXTSPLIT( TRIM(text), … ).
  • Чтобы получить только N-й элемент из результата TEXTSPLIT, оберните его в INDEX: INDEX(TEXTSPLIT(…),1,3) вернёт первый ряд, третий столбец.
  • Для сложных шаблонов замените регулярные символы через SUBSTITUTE перед разделением.

Как использовать TEXTSPLIT в типичных задачах

  1. Разделение списка продуктов, перечисленных через запятую.
  2. Преобразование CSV-поля внутри одной ячейки в столбцы таблицы.
  3. Разбор адресов или тегов, где несколько разделителей возможны.

Пример комбинирования с TRIM и SUBSTITUTE для очистки:

=TEXTSPLIT(TRIM(SUBSTITUTE(B2,",,",",")),",")

Этот приём сначала убирает двойные запятые, затем обрезает пробелы, и уже после этого делит строку.

Список SaaS-приложений в таблице Excel, демонстрация TEXTSPLIT

Что такое TEXTBEFORE

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

Синтаксис

=TEXTBEFORE(text,delimiter,[instance_num],[match_mode],[match_end],[if_not_found])

Параметры:

  • text — строка для поиска.
  • delimiter — разделитель (символ или строка).
  • instance_num — номер вхождения-разделителя, до которого взять текст (по умолчанию 1).
  • match_mode — 0 чувствительно к регистру, 1 нечувствительно.
  • match_end — 1 трактовать конец строки как разделитель; 0 точное совпадение.
  • if_not_found — значение, возвращаемое при отсутствии разделителя (по умолчанию #N/A).

Замечание: символы-шаблоны (wildcards) не поддерживаются.

Примеры

Извлечь имя (первое слово в ФИО):

=TEXTBEFORE(B2," ")

Извлечь текст до третьего вхождения запятой:

=TEXTBEFORE(B2,",",3)

Если нужно вернуть весь текст, если разделитель не найден, задайте if_not_found:

=TEXTBEFORE(B2,"-",1,0,0,B2)

В этом примере при отсутствии дефиса функция вернёт исходную строку.

Как использовать TEXTBEFORE в реальных таблицах

  1. Разобрать имя и фамилию, когда они разделены пробелом.
  2. Извлечь часть SKU до символа “#”.
  3. Получить домен второго уровня из хоста по точке и задать альтернативу, если точки нет.

Таблица Excel, показывающая использование TEXTSPLIT при нескольких разделителях

Что такое TEXTAFTER

TEXTAFTER возвращает часть строки, идущую после указанного разделителя. Это зеркальная функция по отношению к TEXTBEFORE и похожа на RIGHT по роли, но даёт контроль по вхождению.

Синтаксис

=TEXTAFTER(text,delimiter,[instance_num],[match_mode],[match_end],[if_not_found])

Параметры полностью аналогичны TEXTBEFORE.

Примеры

Извлечь доменное имя после первой точки (например, из “www.example.com” получить “example.com”):

=TEXTAFTER(B2,".")

Извлечь последний фрагмент после последнего дефиса:

=TEXTAFTER(B2,"-",-1)

Здесь отрицательное instance_num указывает на обратный отсчёт от конца.

Таблица Excel, демонстрирующая использование TEXTBEFORE для выделения имени из ФИО

Таблица Excel, демонстрирующая использование TEXTAFTER для получения части строки после точки

Комбинирование функций: практические шаблоны

  • Извлечь N-е слово в строке:
=INDEX(TEXTSPLIT(TRIM(B2)," "),1,N)
  • Получить имя пользователя из email (до “@”):
=TEXTBEFORE(B2,"@",1,1,B2)
  • Получить домен верхнего уровня (последняя часть после точки):
=TEXTAFTER(B2,".",-1)
  • Удаление кавычек и последующее разделение:
=TEXTSPLIT(SUBSTITUTE(B2,"\"",""),",")

(Здесь показано удаление символа кавычки перед разделением.)

Типичные ошибки и как их избежать

Важно:

  • Разделители могут встречаться внутри значений (например, запятая внутри кавычек CSV). TEXTSPLIT не понимает контекст кавычек — в таких случаях предварительно обработайте строку.
  • Пробелы и невидимые символы (неразрывный пробел, символы Unicode) приводят к неожидаемым результатам. Используйте CLEAN и TRIM.
  • Если ожидался массив, но результат не “вытек” — проверьте, не блокирует ли соседняя ячейка вывод массива.

Совет: перед применением функций создайте столбец “чистых данных”, где вы примените SUBSTITUTE/CLEAN/TRIM, и уже с него делайте TEXTSPLIT/TEXTBEFORE/TEXTAFTER.

Когда эти функции не подходят

  • Если ваш источник — CSV с кавычками и вложенными разделителями, лучше использовать Power Query (Получить и преобразовать данные). Power Query корректно обрабатывает кавычки и типы.
  • Для сложного регулярного поиска понадобится VBA или внешняя обработка, так как встроенные функции Excel не поддерживают полноценных регулярных выражений.

Ментальные модели и эвристики

  • Если нужно разбить строку на множество частей — думайте о TEXTSPLIT как о «split» в языках программирования.
  • Если нужно только взять часть до/после разделителя — TEXTBEFORE/TEXTAFTER быстрее и эффективнее.
  • Всегда думайте о краевых случаях: отсутствие разделителя, множественные соседние разделители, пустые значения.

Мини‑методология для проектирования обработки текстовых полей

  1. Оцените входные данные: есть ли кавычки, вложенные разделители, пробельные символы.
  2. Нормализуйте: SUBSTITUTE (нежелательные символы), CLEAN, TRIM.
  3. Примените наиболее простую функцию (TEXTBEFORE/TEXTAFTER) для точечных задач.
  4. Для массового разбиения используйте TEXTSPLIT и затем INDEX/FILTER для выборки.
  5. Добавьте проверку на ошибки: IFERROR или явно задайте if_not_found.
  6. Документируйте предположения в отдельном столбце (например: “Ожидается формат: Имя Фамилия”).

Дерево решений (Mermaid)

flowchart TD
  A[Нужно извлечь часть строки?] --> B{Разделитель один или несколько}
  B -->|Один| C[TEXTBEFORE или TEXTAFTER]
  B -->|Несколько/массив| D[TEXTSPLIT]
  C --> E{Нужно конкретное вхождение?}
  E -->|Да| F[Указать instance_num]
  E -->|Нет| G[Оставить по умолчанию]
  D --> H[Использовать INDEX/FILTER для выборки]
  H --> I[Проверить ignore_empty и pad_with]

Ролевые чек‑листы

Аналитик данных:

  • Проверил входные данные на скрытые символы.
  • Нормализовал пробелы и дублирующие разделители.
  • Выбрал функцию по объёму задачи (TEXTBEFORE/TEXTAFTER/ TEXTSPLIT).

Разработчик отчёта:

  • Добавил обработку ошибок (if_not_found или IFERROR).
  • Документировал формат входных данных в описании столбца.

Энд‑юзер/бизнес‑пользователь:

  • Убедился, что результаты соответствуют ожиданиям на выборке тестовых строк.
  • Сообщил все нестандартные примеры в источник данных.

Тесты и критерии приёмки

Критерии приёмки:

  • Для заданного набора тестовых строк функция возвращает ожидаемые фрагменты во 100% случаев без ручной правки.
  • Все пустые и отсутствующие разделители обрабатываются согласованно (через if_not_found или IFERROR).
  • Документированы предположения о формате входных данных.

Примеры тест‑кейсов:

  • Строка без разделителя => возвращаем if_not_found.
  • Строка с несколькими подряд разделителями => ignore_empty TRUE/FALSE проверяется.
  • Строка с завершающим разделителем (на конце) => pad_with корректно выставлен.

Совместимость и локализация

В разных языковых версиях Excel имена функций могут отличаться. Если вы работаете с локализованной копией Excel, проверьте соответствие имён функций или используйте англоязычную версию Office 365/Excel Online для однозначности. Формулы в тексте оставлены в англоязычном синтаксисе, так как большинство облачных и последних локальных сборок поддерживают английские имена функций.

Безопасность и конфиденциальность

При разборе строк с персональными данными (имена, емейлы) соблюдайте внутренние правила обработки PII. Для экспорта результатов убедитесь, что данные анонимизированы, если это требуется политикой организации или законодательством.

Итог

Функции TEXTSPLIT, TEXTBEFORE и TEXTAFTER существенно упрощают работу с текстовыми полями в Excel. Они позволяют переходить от ручной правки к автоматической обработке и интегрируются с другими инструментами Excel (TRIM, SUBSTITUTE, INDEX). Начните с тестовой колонки, нормализуйте данные и выбирайте функцию под задачу: точечный захват части строки — TEXTBEFORE/TEXTAFTER, массовое разбиение — TEXTSPLIT.

Краткие рекомендации:

  • Всегда нормализуйте входные строки через TRIM/CLEAN.
  • Для CSV с кавычками используйте Power Query.
  • Оборачивайте формулы проверкой ошибок и документируйте формат данных.

Важно: перед развёртыванием на реальных данных прогоните набор тестовых случаев и согласуйте обработку пустых и некорректных значений.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Установка GitHub CLI на Linux
Разработка

Установка GitHub CLI на Linux

Как установить Epic Games и играть на Linux
Linux

Как установить Epic Games и играть на Linux

Как сделать Stitch в TikTok — полное руководство
Социальные сети

Как сделать Stitch в TikTok — полное руководство

TEXTSPLIT, TEXTBEFORE, TEXTAFTER в Excel
Excel

TEXTSPLIT, TEXTBEFORE, TEXTAFTER в Excel

Изменение значков и цветов в приложении «Дом»
Умный дом

Изменение значков и цветов в приложении «Дом»

Исправить уведомления WhatsApp в Windows 10
Технологии

Исправить уведомления WhatsApp в Windows 10