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

TEXTSPLIT, TEXTBEFORE и TEXTAFTER в Excel

7 min read Excel Обновлено 04 Dec 2025
TEXTSPLIT, TEXTBEFORE и TEXTAFTER в Excel
TEXTSPLIT, TEXTBEFORE и TEXTAFTER в Excel

Буквенные фишки Scrabble выстроены на подставке на игровом поле

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

Краткое определение

  • TEXTSPLIT — разделяет текст по разделителям и возвращает массив, который «выливается» в соседние ячейки. Простая замена мастера «Текст по столбцам» с динамическими массивами.
  • TEXTBEFORE — возвращает часть строки до указанного разделителя или до его N‑й вхождения.
  • TEXTAFTER — возвращает часть строки после указанного разделителя или после его N‑й вхождения.

Содержание

  • Что делает каждая функция
  • Синтаксис и параметры
  • Простые и продвинутые примеры
  • Когда функции не подходят и альтернативы
  • Чеклист для аналитика и тесты приёмки
  • Краткая справка и рекомендации

Что делает функция TEXTSPLIT

TEXTSPLIT разбивает строку по одному или нескольким разделителям и возвращает двумерный массив (строки и/или столбцы). В итоге Excel автоматически разместит части в соседних ячейках (spill). Это удобно при импорте списков, CSV или данных с несколькими полями в одной ячейке.

Синтаксис:

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

Параметры (кратко):

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

Важно: только text и col_delimiter обязательны; остальные параметры опциональны.

Пример простой задачи

Предположим, в ячейке B2 список SaaS-продуктов через запятую: “Notion, Slack, Zoom, Figma”. Разделить по запятой:

=TEXTSPLIT(B2, ",")

Результат: диапозон ячеек вправо (spill) с отдельными названиями.

Список программ для демонстрации работы TEXTSPLIT в Excel

Несколько разделителей

Если в данных используются разные разделители (запятая, точка с запятой, точка), перечислите их в массиве:

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

Заметка: массив разделителей указывайте в фигурных скобках. Это удобно при неконсистентных данных.

Продвинутый пример — двумерный вывод

Если строка содержит два уровня разделения, например “Категория|Подкатегория;Товар1,Товар2”, можно задать col_delimiter и row_delimiter одновременно, и функция вернёт двумерную матрицу.


Что делает функция TEXTBEFORE

TEXTBEFORE возвращает часть строки, расположенную слева от первого или N‑го вхождения разделителя. По сути — более гибкая альтернатива LEFT, когда разделитель известен.

Синтаксис:

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

Параметры:

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

Ограничение: символы подстановки (wildcards) не поддерживаются.

Пример извлечения имени

В столбце B список имён вида “Ifeoma Sow”. Чтобы получить первое имя:

=TEXTBEFORE(B2, " ")

Затем растяните формулу вниз.

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

Электронная таблица с списком имён для демонстрации TEXTBEFORE

Частые варианты

  • Если имя двойное (“Анна-Мария Иванова”), можно использовать дополнительную логику для сохранения дефиса.
  • Для извлечения фамилии используйте TEXTAFTER (см. ниже) или комбинируйте TEXTAFTER для последнего пробела.

Что делает функция TEXTAFTER

TEXTAFTER возвращает часть строки, расположенную справа от первого или N‑го вхождения разделителя — прямо противоположна TEXTBEFORE.

Синтаксис ровно такой же, как у TEXTBEFORE:

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

Пример: список веб‑адресов в B2, нужно получить имя домена до точки:

=TEXTAFTER(B2, ".")

Результат — часть строки после первой точки. Если требуется текст до первой точки (то есть имя сайта без subdomain), применяйте комбинацию TEXTBEFORE(TEXTAFTER(…)) или регулярную логику через Power Query.

Электронная таблица с списком доменов для демонстрации TEXTAFTER


Практические советы и паттерны использования

  1. Очистка CSV‑полей: TEXTSPLIT полезен при небольших наборах; для больших таблиц рассматривайте Power Query.
  2. Обработка e‑mail: чтобы получить логин используйте TEXTBEFORE(email, “@”), домен — TEXTAFTER(email, “@”).
  3. Извлечение расширения файла: TEXTAFTER(filename, “.”, -1) — но учтите, что instance_num поддерживает отрицательные номера не во всех версиях; предпочтительнее искать последнее вхождение через более сложные конструкции или Power Query.
  4. Игнорирование пустых: set ignore_empty=1 чтобы избавиться от последовательных разделителей.
  5. Чувствительность к регистру: задавайте match_mode, если разделитель может встречаться в разном регистре и это критично.

Важно: поведение функций зависит от версии Excel. Новые функции (TEXTSPLIT, TEXTBEFORE, TEXTAFTER) доступны в Microsoft 365 и некоторых свежих сборках Office. Если у вас старая версия Excel, они могут отсутствовать.


Когда эти функции не подходят и альтернативы

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

Альтернативные подходы:

  • Text to Columns — быстрый интерактивный инструмент для разовых задач.
  • Flash Fill — полезно при распознавании шаблонов по примерам.
  • Power Query — для ETL: надёжно, повторяемо и масштабируемо.

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

  • Если задача одноразовая и простая — используйте TEXTSPLIT/TEXTBEFORE/TEXTAFTER в листе.
  • Если нужна повторяемость и обработка десятков тысяч строк — Power Query.
  • Если требуется поочерёдное извлечение N‑го фрагмента — TEXTSPLIT с массивом и индексами проще, чем многократные TEXTBEFORE/TEXTAFTER.

Decision tree для выбора функции

flowchart TD
  A[Нужно разделить текст?] --> B{Есть несколько разделителей?}
  B -- Да --> C[TEXTSPLIT с массивом разделителей]
  B -- Нет --> D{Нужна часть до/после разделителя?}
  D -- До --> E[TEXTBEFORE]
  D -- После --> F[TEXTAFTER]
  C --> G{Большой объём или повторяемость?}
  G -- Да --> H[Power Query]
  G -- Нет --> I[Оставить формулы]
  E --> I
  F --> I

Чеклист для аналитика перед применением функций

  • Убедиться, что версия Excel поддерживает функции.
  • Проверить, какие разделители встречаются в данных.
  • Решить: одноразовая очистка или повторяемая трансформация.
  • Подумать о пустых значениях и параметре ignore_empty.
  • Написать тестовые случаи (см. ниже).

Тесты приёмки и примеры кейсов

  1. Вход: “A,B,,C” при ignore_empty=0 — ожидание: пустой элемент между B и C.
  2. Вход: “A;B.C” с разделителями {“;”,”.”} — ожидание: три элемента A, B, C.
  3. Вход: “john.doe@example.com” — TEXTBEFORE(…, “@”) -> “john.doe”; TEXTAFTER(…, “@”) -> “example.com”.
  4. Отсутствие разделителя: TEXTBEFORE(“abc”,”;”) с if_not_found задано “-“ -> результат “-“.

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

  • Функция корректно обрабатывает заданные разделители.
  • Нет неожиданного смещения столбцов/строк (spill поведение).
  • Обработаны пустые и краевые случаи (начало/конец строки).

Частые ошибки и как их избежать

  • Ошибка: использование устаревшей версии Excel. Решение: проверить подписку Microsoft 365 или использовать Power Query/VBA.
  • Ошибка: неправильный массив разделителей. Решение: тестировать на наборе примеров и ставить ignore_empty=1 при необходимости.
  • Ошибка: предположение о последнем вхождении разделителя. Решение: явно указывать instance_num или комбинировать функции.

Мини‑руководство по быстрой задаче

Задача: из столбца B с адресами в формате “user@sub.domain.com” получить только основной домен (например, “domain”). Шаги:

  1. Получить часть после “@”: =TEXTAFTER(B2, “@”).
  2. Получить часть до первой точки из результата: =TEXTBEFORE(TEXTAFTER(B2, “@”), “.”).

Если нужен последний уровень (например, “com”), используйте =TEXTAFTER(B2, “.”, -1) если ваша версия поддерживает отрицательные индексы, иначе применяйте последовательные преобразования.


Краткий глоссарий

  • Spill — автоматическое заполнение соседних ячеек массивом результатов.
  • Разделитель — символ или текст, по которому разбивается строка.
  • Power Query — ETL-инструмент в Excel для трансформации данных.

Резюме

  • TEXTSPLIT, TEXTBEFORE и TEXTAFTER экономят время при обработке строк и подходят для большинства задач очистки и парсинга в листах.
  • Для повторяемых, сложных или больших трансформаций предпочтительнее Power Query.
  • Тестируйте на реальных образцах данных, учитывайте пустые элементы и регистр.

Важно: проверьте доступность этих функций в вашей сборке Excel перед массовым внедрением.


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

  • Начните с небольшого тестового диапазона.
  • Сохраните исходные данные до применения массовых формул.
  • Документируйте логику (какие разделители использованы, какие допущения сделаны).
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

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

Загрузить подкаст в Spotify for Podcasters
Подкасты

Загрузить подкаст в Spotify for Podcasters

VC Runtime Minimum X86.msi: скачать и исправить ошибку
Технические статьи

VC Runtime Minimum X86.msi: скачать и исправить ошибку

Удалить Bing из Chrome — инструкция
Браузеры

Удалить Bing из Chrome — инструкция

Восстановить удалённое приложение на iPhone
iOS

Восстановить удалённое приложение на iPhone

Как настроить заметку в Google Keep
Продуктивность

Как настроить заметку в Google Keep

Хостинг статического сайта на S3 и CloudFront
Хостинг

Хостинг статического сайта на S3 и CloudFront