Перейти к основному содержанию

Как извлечь первое / последнее / n-е слово из текстовой строки в Excel?

Вы когда-нибудь сталкивались с проблемой, когда вам нужно извлечь определенное слово из текстовой строки на листе? Например, у вас есть следующий диапазон текстовых строк, необходимых для получения из них первого / последнего или n-го слова, здесь я могу рассказать о некоторых эффективных способах решения этой проблемы.


Извлечь первое слово или фамилию из текстовой строки с помощью формул

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

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

= ЕСЛИ (ISERR (НАЙТИ (""; A2)); ""; LEFT (A2; FIND (""; A2) -1))

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

= ЕСЛИ (ISERR (НАЙТИ (""; A2)), "", ВПРАВО (A2; LEN (A2) -FIND ("*", ПОДСТАВИТЬ (A2; "", "*", LEN (A2) -LEN ( ПОДСТАВИТЬ (A2, "", ""))))))

И теперь вы увидите, что первое или последнее слово извлекается из каждой ячейки.

Ноты: В приведенных выше формулах A2 указывает ячейку, из которой вы извлечете первое или последнее слово.

Трудно запомнить длинные сложные формулы? Удивительный инструмент поможет вам извлечь n-е слово wвсего в несколько кликов!

Вышеуказанные длинные формулы могут извлекать только первое и последнее слово, но будут бесполезны для извлечения указанного n-го слова, говорит второе слово, шестое слово и т. Д. Даже если вы можете вычислить формулы для решения проблемы, формулы должны быть слишком сложен для запоминания и применения. Здесь рекомендуется извлечь n-е слово в ячейку Kutools for Excel, и это поможет вам извлечь n-е слово как можно проще!


Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now

Извлечь n-е слово из текстовой строки с помощью функции, определяемой пользователем

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

1. Удерживайте ALT + F11 , чтобы открыть Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Модули окно.

Function FindWord(Source As String, Position As Integer)
'Update 20131202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = ""
Else
    FindWord = arr(Position - 1)
End If
End Function

3. Затем сохраните код, в этом примере я получу третье слово из строки, поэтому введите эту формулу = искомое слово (A2,3) в пустую ячейку B2, а затем перетащите дескриптор автозаполнения этой ячейки в нужный диапазон. Смотрите скриншот:

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


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

Этот метод представит Kutools for Excel's Разделить клетки утилита для извлечения каждого слова из ячеек текстовой строки, а затем перечисления извлеченных слов по горизонтали или вертикали в зависимости от ваших потребностей.

Kutools for Excel - Содержит более 300 основных инструментов для Excel. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Скачать сейчас!

1. Выберите ячейки текстовой строки, из которых вы будете извлекать их слова, и щелкните значок Кутулс > Слияние и разделение > Разделить клетки.

2. В открывшемся диалоговом окне Split Cells укажите тип разделения в поле Тип раздел, проверьте Space вариант в Укажите разделитель и нажмите Ok кнопка. Смотрите скриншот:

3. Теперь укажите целевой диапазон, в который вы будете выводить извлеченные слова, и нажмите кнопку OK кнопка

Если вы проверили Разделить на столбцы в приведенном выше диалоговом окне «Разделить ячейки» каждое слово извлекается из каждой текстовой строки и перечисляется по вертикали.

Если вы проверили Разделить на строки в приведенном выше диалоговом окне «Разделить ячейки» каждое слово извлекается из каждой текстовой строки и перечисляется по горизонтали.


Извлеките n-е слово из текстовой строки в Excel с помощью замечательного инструмента

Если вы установили Kutools for Excel, вы можете использовать его Formula Helper> Извлечь n-е слово в функцию ячейки, чтобы быстро извлечь n-е слово из указанной ячейки.

Kutools for Excel - Содержит более 300 основных инструментов для Excel. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Скачать сейчас!

1. Выберите ячейку, в которую вы поместите извлеченное слово, и нажмите Кутулс > Формула Помощник > Формула Помощник для включения этой функции.

2. В диалоговом окне Помощник по формулам сделайте следующее:
(1) Выберите Текст из Тип формулы раскрывающийся список;
(2) Щелкните, чтобы выделить Извлечь n-е слово в ячейку в Выберите формулу список;
(3) В Ячейка поле укажите ячейку, из которой вы будете извлекать слово;
(4) В N-й поле укажите номер.

3, Нажмите Ok кнопка. При необходимости перетащите маркер автозаполнения ячейки формулы и скопируйте формулу в другие ячейки.


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


Kutools for Excel: Более 300 удобных инструментов у вас под рукой! Начните 30-дневную бесплатную пробную версию без ограничений сегодня. Скачать

Статьи по теме:

Лучшие инструменты для офисной работы

Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (38)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I've created the FindWord custom function as described and it worked perfectly but it stopped working the next day. I looked in the VBA window and the Module is still there. Any idea why the function is not working anymore?
This comment was minimized by the moderator on the site
Dark Chocolate 25gm box 12 pcs

Dark Chocolate 20gm*24 box

White Chocolate 15gm

White Chocolate 25gm*24

Biscuits W/Marshmallow300gm

Chocolate 40gm

Can some plz help to extract the numbers before "gm", for example : 25,20,15,25,300,40
This comment was minimized by the moderator on the site
Hi I would like to know how to use the VBA model but I have sentences of only one word, and i would like to pick the first word even if there is only one word.

Thank you
This comment was minimized by the moderator on the site
Hi Maura,
The VBA cannot extract the first word if there is only word in the cell. However, it’s recommended to apply the Text to Column to extract the first word of every cell in a column quickly.
1. Select the column, copy, and paste in a blank column.
2. Keep the new column selected, click Data > Text to Column.
3. In the Text column dialog, select Delimited, and then check Space as delimiters, and finally click Finish.
4. Now all words are separated by space. For the extracted words, you can remove all columns except the first one.
This comment was minimized by the moderator on the site
i want to remove the last word in cell and data is like this "/Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/Cdtr/CtctDtls/FaxNb" can i have formula
This comment was minimized by the moderator on the site
Thanks so much for these! I have a question, though: how do I extract a number or group of numbers from a cell or textbox? For instance, if I have [37.5" x 21'] in cell A1, how could extract 37.5 into A2? There could be any number of characters and numbers in A1, but I'll always want the first number to the left of the "X", and the first number to the right. Not sure if you've covered something like this elsewhere, so I thought I'd ask here. (Not sure if this went through the first time, so here it is again.)
This comment was minimized by the moderator on the site
Thank you! It works fine called in a Sub.
This comment was minimized by the moderator on the site
the original formula isn't working for me, I keep getting #NAME?, anyone able to help? I am using Excel 2013 and this VBA would save me sooooo much time
This comment was minimized by the moderator on the site
The original VBA code posted here would save me so much time, however whenever I type in the =findword formula, I then get #NAME?, anyone able to help me? I am using Excel 2013
This comment was minimized by the moderator on the site
Hi, I am having cell with values like SAN_UN_TC1,SAN_UN_TC2,PEP_HR_TC1 I would like to extract first words liek SAN /PEP into one cell and words liek UN/HR to another cell How could i do it, Any help is appreciated. Thanks, Shiva
This comment was minimized by the moderator on the site
If number of characters in string (SAN_UN_TC1) is fixed (3_2_3), it's simple: column 1: =LEFT(B15,3) column 2: =MID(B15,5,2) column 3: =RIGHT(B15,3)
This comment was minimized by the moderator on the site
Many thanks for sharing VBA code....saved me a lot of time
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations