Функция ТЕКСТРАЗД (TEXTSPLIT) делит текст ячейки на части по разделителю и раскладывает их по соседним ячейкам: =ТЕКСТРАЗД(A2;" ") разобьёт «Иванов Иван Иванович» на три столбца, а =ТЕКСТРАЗД(A2;;", ") — на строки, по одному значению в каждой. Это формульная версия мастера «Текст по столбцам»: результат обновляется сам, когда меняется исходная ячейка.
ТЕКСТРАЗД есть в Excel для Microsoft 365 и Excel 2024. В Google Таблицах ту же задачу решает функция SPLIT — о различиях ниже.
| Раздел функций | Текстовые |
| Название на английском | TEXTSPLIT |
| Версии Excel | Excel для Microsoft 365 (Windows и Mac), Excel 2024, Excel в браузере |
| Волатильность | Не волатильная |
| Похожие функции | ЛЕВСИМВ, ПСТР, ПРАВСИМВ, НАЙТИ, ПОДСТАВИТЬ, РЕГИЗВЛЕЧЬ |
Синтаксис функции ТЕКСТРАЗД
=ТЕКСТРАЗД(текст;разделитель_столбцов;[разделитель_строк];[игнорировать_пустые];[режим_сравнения];[заполнитель])
- текст — ячейка или строка, которую нужно разделить;
- разделитель_столбцов — символ или текст, по которому части раскладываются вправо по столбцам. Можно указать несколько разделителей в фигурных скобках: {",";";"};
- разделитель_строк — необязательный: по нему части раскладываются вниз по строкам. Если нужен только он, пропустите второй аргумент: ТЕКСТРАЗД(A2;;",");
- игнорировать_пустые — необязательный: ИСТИНА пропускает пустые части между двумя разделителями подряд, ЛОЖЬ (по умолчанию) оставляет на их месте пустую ячейку;
- режим_сравнения — необязательный: 0 (по умолчанию) — разделитель ищется с учётом регистра, 1 — без учёта;
- заполнитель — необязательный: чем заполнить пустые места, если строки результата получились разной длины. По умолчанию — #Н/Д.
Результат — динамический массив: формулу вводят в одну ячейку, а Excel сам разливает значения вправо и вниз. Ячейки, куда попадёт результат, должны быть пустыми, иначе появится ошибка #ПЕРЕНОС!. Названия аргументов здесь описательные — в вашей версии Excel подсказка может называть их немного иначе.
Как разделить ФИО на три ячейки
Самая частая задача — разбить фамилию, имя и отчество по ячейкам. Разделитель — пробел. Формула в B2 разливается на три столбца, дальше её просто протягивают вниз: каждая строка делится отдельно.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | ФИО | Фамилия | Имя | Отчество |
| 2 | Иванов Иван Иванович | Иванов=ТЕКСТРАЗД(A2;" ") | Иван | Иванович |
| 3 | Петрова Анна Сергеевна | Петрова=ТЕКСТРАЗД(A3;" ") | Анна | Сергеевна |
| 4 | Ким Олег | Ким=ТЕКСТРАЗД(A4;" ") | Олег |
У «Ким Олег» всего две части, поэтому D4 остаётся пустой. Если между словами случайно стоят два пробела, появится лишняя пустая ячейка — уберите лишние пробелы через СЖПРОБЕЛЫ или включите четвёртый аргумент ИСТИНА.
В английском Excel: =TEXTSPLIT(A2," ")
Если нужна только одна часть, например имя, оберните ТЕКСТРАЗД в ИНДЕКС: =ИНДЕКС(ТЕКСТРАЗД(A2;" ");2). Третья часть — =ИНДЕКС(ТЕКСТРАЗД(A2;" ");3).
Разделить текст ячейки на строки
Чтобы части легли не вправо, а вниз, укажите разделитель третьим аргументом и оставьте второй пустым. Так одна ячейка со списком превращается в столбец.
| A | B | C | |
|---|---|---|---|
| 1 | Текст | Результат | |
| 2 | морковь, лук, картофель | морковь=ТЕКСТРАЗД(A2;;", ") | |
| 3 | лук | ||
| 4 | картофель |
Две точки с запятой подряд в формуле — это пропущенный разделитель столбцов. Разделитель «, » записан вместе с пробелом, поэтому в результате нет пробелов в начале слов.
В английском Excel: =TEXTSPLIT(A2,,", ")
Если указать оба разделителя, ТЕКСТРАЗД соберёт из одной ячейки целую таблицу: разделитель строк режет текст на строки, а разделитель столбцов — каждую строку на столбцы.
| A | B | C | |
|---|---|---|---|
| 1 | Текст | Город | Продажи |
| 2 | Москва=120;Казань=85;Тула=40 | Москва=ТЕКСТРАЗД(A2;"=";";") | 120 |
| 3 | Казань | 85 | |
| 4 | Тула | 40 |
Сначала текст делится по «;» на три строки, затем каждая строка — по «=» на два столбца. Числа в результате — это текст; как превратить их в числа, рассказано ниже.
В английском Excel: =TEXTSPLIT(A2,"=",";")
Ячейку на строки так можно разбить только по одной: если нужно разложить по строкам целую таблицу так, чтобы рядом с каждым значением осталась его категория, смотрите статью как разделить ячейку на строки.
Несколько разделителей, пустые значения и регистр
Разные разделители перечисляют в фигурных скобках через точку с запятой. Четвёртый аргумент решает, что делать с двумя разделителями подряд, пятый — учитывать ли регистр букв в разделителе.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Текст | Формула | Результат | |||
| 2 | яблоко, груша; слива | =ТЕКСТРАЗД(A2;{", ";"; "}) | яблоко=ТЕКСТРАЗД(A2;{", ";"; "}) | груша | слива | |
| 3 | a,,b,c | =ТЕКСТРАЗД(A3;",") | a=ТЕКСТРАЗД(A3;",") | b | c | |
| 4 | a,,b,c | =ТЕКСТРАЗД(A4;",";;ИСТИНА) | a=ТЕКСТРАЗД(A4;",";;ИСТИНА) | b | c | |
| 5 | 10x20X30 | =ТЕКСТРАЗД(A5;"x") | 10=ТЕКСТРАЗД(A5;"x") | 20X30 | ||
| 6 | 10x20X30 | =ТЕКСТРАЗД(A6;"x";;;1) | 10=ТЕКСТРАЗД(A6;"x";;;1) | 20 | 30 |
Строка 2: два разных разделителя сразу. Строки 3–4: без ИСТИНА на месте «,,» остаётся пустая ячейка, с ИСТИНА она пропадает. Строки 5–6: по умолчанию «x» и «X» — разные символы, с режимом 1 регистр не важен.
В английском Excel: =TEXTSPLIT(A2,{", ","; "})
Ошибка #Н/Д в результате и аргумент «заполнитель»
Когда строки получаются разной длины, Excel дополняет короткие ячейками #Н/Д. Шестой аргумент заменяет их на любое значение — пустую строку, ноль или прочерк. Другой способ — обернуть формулу в ЕСНД: =ЕСНД(ТЕКСТРАЗД(A2;"=";";");"").
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Текст | По умолчанию | С заполнителем | ||
| 2 | a=1;b=2;c | a=ТЕКСТРАЗД(A2;"=";";") | 1 | a=ТЕКСТРАЗД(A2;"=";";";;;"—") | 1 |
| 3 | b | 2 | b | 2 | |
| 4 | c | #Н/Д | c | — |
У «c» нет второй части, поэтому в C4 стоит #Н/Д. Во второй формуле на её месте прочерк.
В английском Excel: =TEXTSPLIT(A2,"=",";",,,"—")
Числа после разделения — это текст
ТЕКСТРАЗД всегда возвращает текст, даже если части состоят из цифр. СУММ такие значения пропустит. Двойной минус перед функцией превращает весь массив в числа: =--ТЕКСТРАЗД(A2;";"). Подробнее о проблеме — в статье про числа, сохранённые как текст.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Текст | Части (текст) | Сумма | ||
| 2 | 10;20;30 | 10=ТЕКСТРАЗД(A2;";") | 20 | 30 | 60=СУММ(--ТЕКСТРАЗД(A2;";")) |
Значения в B2:D2 прижаты к левому краю — это текст. Двойной минус внутри СУММ переводит их в числа, и сумма считается без вспомогательных столбцов.
В английском Excel: =SUM(--TEXTSPLIT(A2,";"))
Как разделить целый столбец одной формулой
Если передать ТЕКСТРАЗД диапазон, а не одну ячейку, функция вернёт только первую часть каждой строки: Excel не умеет хранить «массив массивов». Есть два выхода: протянуть формулу с одной ячейкой вниз или сначала склеить диапазон в одну строку через ОБЪЕДИНИТЬ, а потом разрезать её обратно сразу на строки и столбцы.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | ФИО | Только первый элемент | Вся таблица | ||
| 2 | Иванов Иван | Иванов=ТЕКСТРАЗД(A2:A4;" ") | Иванов=ТЕКСТРАЗД(ОБЪЕДИНИТЬ(";";ИСТИНА;A2:A4);" ";";") | Иван | |
| 3 | Петрова Анна | Петрова | Петрова | Анна | |
| 4 | Ким Олег | Ким | Ким | Олег |
В столбце B — только фамилии: так ТЕКСТРАЗД ведёт себя с диапазоном. В D2 строки склеены через «;», а потом разделены: «;» — на строки, пробел — на столбцы. У ОБЪЕДИНИТЬ есть предел — 32 767 символов в итоговой строке.
В английском Excel: =TEXTSPLIT(TEXTJOIN(";",TRUE,A2:A4)," ",";")
Если ТЕКСТРАЗД нет в вашем Excel
В Excel 2021 и более ранних версиях функции нет — формула вернёт #ИМЯ?. Варианты:
- мастер «Текст по столбцам» на вкладке «Данные» — делит столбец по разделителю за пару кликов, но результат не обновляется;
- мгновенное заполнение (Ctrl+E) — Excel угадывает шаблон по одному-двум примерам;
- формула на старых функциях: каждый пробел заменяется сотней пробелов, а ПСТР вырезает N-й кусок длиной 100 символов. Число 1, 2, 3 в формуле — номер части.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | ФИО | Часть 1 | Часть 2 | Часть 3 |
| 2 | Иванов Иван Иванович | Иванов=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;" ";ПОВТОР(" ";100));(1-1)*100+1;100)) | Иван=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;" ";ПОВТОР(" ";100));(2-1)*100+1;100)) | Иванович=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;" ";ПОВТОР(" ";100));(3-1)*100+1;100)) |
| 3 | Ким Олег | Ким=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A3;" ";ПОВТОР(" ";100));(1-1)*100+1;100)) | Олег=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A3;" ";ПОВТОР(" ";100));(2-1)*100+1;100)) | =СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A3;" ";ПОВТОР(" ";100));(3-1)*100+1;100)) |
ПОВТОР растягивает текст так, что каждое слово оказывается в своём «окне» из 100 символов, а СЖПРОБЕЛЫ убирает лишние пробелы вокруг него. Номер части стоит в скобках перед «-1»; если заменить его на СТОЛБЕЦ(A1), формулу можно протянуть вправо.
В английском Excel: =TRIM(MID(SUBSTITUTE($A2," ",REPT(" ",100)),(1-1)*100+1,100))
ТЕКСТРАЗД, «Текст по столбцам» и SPLIT в Google Таблицах
| ТЕКСТРАЗД | Текст по столбцам | SPLIT (Google Таблицы) | |
|---|---|---|---|
| Обновляется при изменении данных | да | нет, это разовая операция | да |
| Делит на строки | да, третьим аргументом | нет | нет, только по столбцам |
| Несколько разделителей | массивом {",";";"} | галочками в мастере | каждый символ строки-разделителя — отдельный разделитель |
| Пустые значения | оставляет, если не указать ИСТИНА | можно «считать последовательные разделители одним» | пропускает по умолчанию |
| Версии | Microsoft 365, Excel 2024 | все версии Excel | Google Таблицы |
Формула из Google Таблиц =SPLIT(A2;" ") при переносе файла в Excel превратится в ТЕКСТРАЗД не сама: SPLIT в Excel нет, и её нужно заменить вручную. Обратите внимание на разницу: SPLIT по умолчанию считает разделителем каждый символ строки, то есть SPLIT(A2;", ") режет и по запятой, и по пробелу, а ТЕКСТРАЗД(A2;", ") ищет только сочетание «запятая + пробел».
Для разовой разбивки большой таблицы удобнее мастер «Текст по столбцам». Разложить по строкам целую таблицу с категориями умеет процедура «Развернуть по разделителю» надстройки !SEMTools, а разнести строки таблицы по разным листам — «Разбить лист по значению столбца».
Почему ТЕКСТРАЗД не работает — частые ошибки
- #ИМЯ?. В вашей версии Excel нет функции — она появилась в Microsoft 365 и Excel 2024. Используйте «Текст по столбцам» или формулу с ПСТР выше.
- #ПЕРЕНОС!. Результату некуда разлиться: справа или снизу от формулы есть заполненные ячейки. Очистите их или перенесите формулу.
- Лишние пустые ячейки. В тексте стоят двойные пробелы или разделители подряд — укажите четвёртый аргумент ИСТИНА или очистите текст через СЖПРОБЕЛЫ.
- Пробел в начале каждой части. Разделитель указан без пробела: для «a, b, c» пишите ", ", а не ",".
- Сумма частей равна нулю. Части — текст; поставьте перед функцией двойной минус.
- Только первое слово при ссылке на диапазон. ТЕКСТРАЗД делит одну ячейку; для столбца протяните формулу или используйте связку с ОБЪЕДИНИТЬ.
Функция ТЕКСТРАЗД — частые вопросы
Что делает функция ТЕКСТРАЗД в Excel?
Делит текст на части по разделителю и раскладывает их по столбцам или строкам: =ТЕКСТРАЗД(A2;" ") разбивает текст по пробелам.
Как ТЕКСТРАЗД называется на английском?
TEXTSPLIT. Формула =ТЕКСТРАЗД(A2;" ") в английском Excel — =TEXTSPLIT(A2," ").
В каких версиях Excel есть ТЕКСТРАЗД?
В Excel для Microsoft 365 (Windows и Mac), Excel 2024 и Excel в браузере. В Excel 2021 и раньше её нет.
Как разделить ФИО на три ячейки формулой?
=ТЕКСТРАЗД(A2;" ") — фамилия, имя и отчество разольются в три соседние ячейки.
Как разделить текст ячейки на строки?
Укажите разделитель третьим аргументом: =ТЕКСТРАЗД(A2;;", ").
Есть ли в Excel функция SPLIT?
Нет, SPLIT — функция Google Таблиц. Её аналог в Excel — ТЕКСТРАЗД (TEXTSPLIT).
Разложить по строкам таблицу с категориями, разнести данные по листам или разделить текст и цифры в ячейках можно без формул — в пару кликов с !SEMTools, в любой версии Excel.
!SEMTools решает эту и сотни других задач в пару кликов!
Итоги: функция ТЕКСТРАЗД в Excel
| Задача | Формула |
|---|---|
| По пробелу на столбцы | =ТЕКСТРАЗД(A2;" ") |
| На строки | =ТЕКСТРАЗД(A2;;", ") |
| В таблицу | =ТЕКСТРАЗД(A2;"=";";") |
| Несколько разделителей | =ТЕКСТРАЗД(A2;{", ";"; "}) |
| Без пустых ячеек | =ТЕКСТРАЗД(A2;",";;ИСТИНА) |
| N-я часть | =ИНДЕКС(ТЕКСТРАЗД(A2;" ");2) |
| Части как числа | =--ТЕКСТРАЗД(A2;";") |
Надеюсь, на этой странице вы нашли то, что искали. ТЕКСТРАЗД — самый короткий способ разделить ячейку формулой; для разовой работы есть «Текст по столбцам», а соседние задачи решают статьи о том, как разделить текст и цифры и извлечь первые слова из ячеек.