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

Извлечь первое слово из ячейки Excel в отдельную ячейку можно формулой =ЛЕВСИМВ(A2;ПОИСК(" ";A2&" ")-1): ПОИСК находит первый пробел, ЛЕВСИМВ берёт всё до него, а пробел, приписанный к тексту, не даёт формуле сломаться, если слово в ячейке одно. В Excel 365 то же делает =ТЕКСТДО(A2;" ";;;;A2). Оставить в самих ячейках только первое слово можно заменой « *» на пустоту через Ctrl+H, а первые N слов во всём диапазоне извлекает процедура !SEMTools.

Первое слово (до пробела) в Excel-ячейке часто приковывает внимание тех, кто работает с текстовыми данными. Его часто нужно выделить как отдельную единицу, с которой уже определенным образом оперировать — сделать его с заглавной буквы, выделить в отдельную ячейку, оставить только его в исходной ячейке и т.д.

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

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

Извлечь первое слово из ячейки формулой

Если под первым словом понимаются символы строки до первого пробела, то функция довольно проста:

=ЛЕВСИМВ(A1;ПОИСК(" ";A1&" ")-1)

Здесь A1 - ячейка с искомым словом.

Обратили внимание на дополнительный пробел, добавляемый к значению исходной ячейки через амперсанд (&)? Он используется для ситуаций, когда первое слово в ячейке является единственным, или слов в ячейке нет совсем. Если не добавлять этот пробел, функция в таких случаях вернет ошибку.

Формула для вывода первого слова в отдельную ячейку
Выводим первое слово ячейки в отдельную с помощью комбинации функций ПОИСК и ЛЕВСИМВ

А ошибки нам тут ни к чему, поэтому рекомендуется использовать формулу выше. Удобство формул в том, что, если их протянуть на весь второй столбец, при изменении данных в первом столбце первые слова будут автоматически вставляться в соседние ячейки.

Первое слово и первые два слова
B3=ЛЕВСИМВ(A3;ПОИСК(" ";A3&" ")-1)
ABC
1ТекстПервое словоПервые 2 слова
2Москва СитиМосква=ЛЕВСИМВ(A2;ПОИСК(" ";A2&" ")-1)Москва Сити=ЕСЛИОШИБКА(ЛЕВСИМВ(A2;ПОИСК(СИМВОЛ(9);ПОДСТАВИТЬ(A2&" ";" ";СИМВОЛ(9);2))-1);A2)
3Купить диван недорогоКупить=ЛЕВСИМВ(A3;ПОИСК(" ";A3&" ")-1)Купить диван=ЕСЛИОШИБКА(ЛЕВСИМВ(A3;ПОИСК(СИМВОЛ(9);ПОДСТАВИТЬ(A3&" ";" ";СИМВОЛ(9);2))-1);A3)
4СочиСочи=ЛЕВСИМВ(A4;ПОИСК(" ";A4&" ")-1)Сочи=ЕСЛИОШИБКА(ЛЕВСИМВ(A4;ПОИСК(СИМВОЛ(9);ПОДСТАВИТЬ(A4&" ";" ";СИМВОЛ(9);2))-1);A4)

В A4 одно слово — формула вернула его целиком, а не ошибку. Формула в столбце C обёрнута в ЕСЛИОШИБКА: без неё для ячеек, где слов меньше двух, получится #ЗНАЧ!.

В английском Excel: =LEFT(A2,SEARCH(" ",A2&" ")-1)

Первое слово в Excel 365: ТЕКСТДО

Функция ТЕКСТДО возвращает текст до разделителя. Шестой аргумент — что вернуть, если разделитель не найден: =ТЕКСТДО(A2;" ";;;;A2) вернёт всю ячейку, если в ней одно слово. Первые два слова — =ТЕКСТДО(A2;" ";2;;;A2), последнее слово — =ТЕКСТПОСЛЕ(A2;" ";-1;;;A2).

Разделить ячейку по пробелу

Чтобы разложить все слова по отдельным столбцам, выделите столбец, нажмите Данные → Текст по столбцам, выберите «с разделителями» и отметьте «пробел». Первое слово окажется в первом столбце. Учтите: соседние справа столбцы будут перезаписаны.

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

Простейший вариант сделать подобное в Excel - штатной процедурой "Найти и заменить". Можно вызвать процедуру горячим сочетанием клавиш Ctrl + H, в первом окошке ввести пробел со звёздочкой (см. подстановочные символы в Excel), а второе оставить пустым как есть.

Оставить первое слово в ячейках Excel
Используем "Найти и заменить", чтобы заменить все слова через пробел после первого, на пустоту.

Есть и вариант с использованием !SEMTools, процедура находится в подразделе ИЗВЛЕЧЬ - Извлечь Слова - по порядку:

оставить в ячейке Excel только первое слово с !SEMTools
"вытаскиваем" первые слова из ячеек и оставляем их в них же, заменяя исходные значения

Взять первые 2/3/N слов ячейки

Чем больше число слов, которые вы хотите извлечь из ячейки, тем сложнее это будет сделать. В Google Spreadsheets есть замечательная функция SPLIT, с её помощью можно разбить ячейку на отдельные слова и брать каждое из них по его индексу, что делает инструмент идеальным для такой задачи. Но в Excel, к сожалению, подобной функции нет.

Однако, есть альтернативы. Например, чтобы взять первые два слова, один из вариантов формулы будет выглядеть так:

=ЛЕВСИМВ(A1;ПОИСК(ЮНИСИМВ(23456);ПОДСТАВИТЬ(A1&" ";" ";ЮНИСИМВ(23456);2))-1)

Формула использует особенные свойства функций ПОДСТАВИТЬ и ЮНИСИМВ:

  • функция ПОДСТАВИТЬ позволяет заменить N-ую подстроку в ячейке на заданное значение
  • а ЮНИСИМВ позволяет задать это значение настолько уникальным, насколько возможно, чтобы быть уверенным, что оно будет единственным в ячейке

Далее функция ПОИСК находит позицию этого символа, чтобы функция ЛЕВСИМВ взяла все что до него (из позиции вычитается единица).

Неплохая надёжная формула со своими преимуществами и недостатками. Если слов в ячейке меньше, чем N, она вернёт #ЗНАЧ! — оберните её в ЕСЛИОШИБКА(…;A1), чтобы в таком случае возвращалась вся ячейка.

Преимущество в том, что легко поддаётся модификации под задачу с извлечением 3,4 и далее слов, просто нужно заменить в формуле аргумент функции подставить, который 2, на соответствующее число.

Недостаток - ЮНИСИМВ есть только в Excel 2013 и новее. Вот аналог для более ранних версий, использующий функцию СИМВОЛ:

=ЛЕВСИМВ(A1;ПОИСК(СИМВОЛ(9);ПОДСТАВИТЬ(A1&" ";" ";СИМВОЛ(9);2))-1)

Функция добавляет в строку символ табуляции, также с высокой вероятностью изначально в ней отсутствующий.

Первое слово ячейки Excel с большой буквы

Сделать первое слово ячейки с большой буквы не очень сложно, если перед ним нет никаких других символов. Но если там кавычки, скобки, тире или еще какая-то пунктуация, решение может быть существенно более сложным, чем просто взять первый символ ячейки и сделать его заглавным.

Поэтому я рассмотрел эту задачу в отдельной статье "Как сделать первую букву ячейки заглавной".

Процедуры !SEMTools для извлечения первых N слов

Знание функций и формул Excel очень помогает в работе, для энтузиастов у меня есть целый Справочник функций Excel. Однако тратить время на составление сложных конструкций может быть накладно, равно как и хранить где-то на диске огромный файл с примерами их использования.

Тем, кто ценит время, будут полезны процедуры моей надстройки, среди которых и такая, которая позволяет взять первые N слов во всех выделенных ячейках. И либо вставить в соседний столбец, либо оставить в изначальных ячейках. За режим вывода отвечает маленький флажок в надстройке:

взять первые несколько слов ячейки и вывести в другую
Как вытащить первые слова в ячейках в отдельный столбец или оставить в изначальных ячейках с !SEMTools

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

  • Результат пустой. В начале ячейки пробел: ПОИСК находит его на первой позиции. Используйте СЖПРОБЕЛЫ(A2) вместо A2 или удалите лишние пробелы.
  • К слову «прилипла» запятая. Формула берёт всё до пробела, включая знаки препинания: «Москва,» вместо «Москва». Сначала удалите пунктуацию.
  • Вернулся весь текст, хотя слов несколько. Слова разделены неразрывным пробелом (СИМВОЛ(160)), который ПОИСК(" ") не находит. Замените его: ПОДСТАВИТЬ(A2;СИМВОЛ(160);" ").
  • ТЕКСТДО даёт #ИМЯ?. Функции нет в Excel 2021 и раньше — используйте формулу с ЛЕВСИМВ и ПОИСК.

Первое слово в Excel — частые вопросы

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

Формулой =ЛЕВСИМВ(A1;ПОИСК(" ";A1&" ")-1) или в Excel 365 — =ТЕКСТДО(A1;" ";;;;A1).

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

Нажмите Ctrl+H, в поле «Найти» введите пробел и звёздочку (« *»), поле «Заменить на» оставьте пустым и нажмите «Заменить все».

Как взять первые два слова?

Формулой =ЕСЛИОШИБКА(ЛЕВСИМВ(A1;ПОИСК(СИМВОЛ(9);ПОДСТАВИТЬ(A1&" ";" ";СИМВОЛ(9);2))-1);A1) или =ТЕКСТДО(A1;" ";2;;;A1) в Excel 365.

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

Формулой =ЗАМЕНИТЬ(A1;1;ПОИСК(" ";A1&" ");"") — подробно в статье как удалить первое слово.

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

Итоги: как извлечь первое слово в Excel

ЗадачаСпособ
Первое слово в соседний столбец=ЛЕВСИМВ(A1;ПОИСК(" ";A1&" ")-1)
Первое слово в Excel 365=ТЕКСТДО(A1;" ";;;;A1)
Оставить первое слово на местеCtrl+H: « *» → пусто
Первые N словПОДСТАВИТЬ + ПОИСК или ТЕКСТДО(A1;" ";N;;;A1)
Любые слова по порядку без формулПроцедура !SEMTools

Надеюсь, на этой странице вы нашли то, что искали. Вас наверняка заинтересуют и похожие операции: удалить последнее слово и поменять слова местами.

Комментарий:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*