Как извлечь первые или последние два (или n) слова из текстовой строки?
При работе с большими объемами текстовых данных в Excel часто возникает необходимость извлечь определенные слова из каждой ячейки, например, первые несколько слов, последние слова или слова в конкретной позиции. Типичные сценарии включают извлечение имен, адресов, ключевых слов или уникальных идентификаторов из ячеек, содержащих многословные текстовые записи, особенно когда данные разделены пробелами. Например, у вас может быть ячейка, содержащая предложение или код продукта, и вы хотите выделить первые три слова или только последние два слова для последующей обработки. В Excel нет прямой встроенной функции для этого, но существует несколько подходов для достижения гибкого извлечения слов, каждый из которых подходит для разных размеров данных и потребностей. В этой статье будут представлены формулы, практические инструменты и дополнительные методы автоматизации, которые помогут вам эффективно извлечь первое, последнее или N-е слово(а) из текстовой строки в Excel.
Извлечение первых двух или N слов из текстовой строки с помощью формул
Извлечение последних двух или N слов из текстовой строки с помощью формулы
Извлечение первого или N-го слова из текстовой строки с помощью удобной функции
Извлечение слов с помощью макроса VBA (первое, последнее или N-е слово)
Извлечение слов с использованием Power Query (разделение и повторное объединение)
Извлечение первых двух или N слов из текстовой строки с помощью формул
Чтобы извлечь первые несколько слов из значения ячейки, вы можете использовать следующие формулы. Это особенно полезно, если у вас есть последовательный разделитель слов (например, пробел), и вы хотите взять, например, первые три слова из ячейки. Эти формулы легко применять, они хорошо работают для умеренно больших наборов данных и могут быть адаптированы для извлечения любого количества начальных слов.
Введите одну из приведенных ниже формул в пустую ячейку (например, C2), а затем перетащите маркер заполнения вниз, чтобы заполнить формулу для всех соответствующих строк. Вы увидите желаемое количество начальных слов, извлеченных из каждой текстовой строки, как показано на скриншоте ниже.
Объяснение и советы:
1. В приведенной выше примерной формуле A2 относится к ячейке, содержащей ваш исходный текст, а 3 — это количество слов, которые вы хотите извлечь. Измените эти ссылки по мере необходимости для ваших данных.
2. Если количество слов, которые вы хотите извлечь, меняется по строкам и указано в столбце B, вы можете использовать следующую гибкую формулу:
Эта формула позволяет динамически указывать количество слов для извлечения, ссылаясь на ячейку (например, B2). Убедитесь, что B2 содержит допустимое целое число.
3. Если ваш текст разделен другими разделителями (например, запятой или точкой с запятой), вы можете адаптировать формулу, заменив символ пробела (" ") на ваш конкретный разделитель.
4. Будьте осторожны с ведущими/завершающими двойными пробелами или несколькими последовательными пробелами, так как они могут повлиять на результат. Применение TRIM
помогает удалить лишние пробелы.
5. Если общее количество слов в ячейке меньше, чем число, которое вы пытаетесь извлечь, формула вернет весь текст без ошибок.
Извлечение последних двух или N слов из текстовой строки с помощью формулы
Чтобы извлечь последние слова из текстовой строки (например, последние два или последние N слов), следующая формула поможет. Этот метод эффективен для наборов данных, где вам нужно последовательно извлекать конечные слова, такие как фамилии, расширения файлов или идентификаторы в конце текстовой ячейки.
Пожалуйста, скопируйте и вставьте формулу ниже в пустую ячейку, где вы хотите получить результат. После ввода формулы перетащите маркер заполнения вниз, чтобы применить ее к другим строкам.
- A2: исходная ячейка, содержащая текст.
- 3: количество последних слов, которые вы хотите извлечь. Чтобы получить последние 5 слов, просто измените 3 на 5 в формуле.
- Если ячейка содержит меньше слов, чем запрошенное количество, она просто вернет все доступные слова в этой ячейке.
- Если ваши данные разделены другим разделителем (запятой, табуляцией), отрегулируйте формулу соответственно.
- Сложные или непоследовательные пробелы в ваших данных могут привести к неточным результатам; очистите текст перед применением формулы, когда это возможно.
Извлечение первого или N-го слова из текстовой строки с помощью удобной функции
Если вам нужно извлечь только первое или конкретное (N-е) слово из текстовой строки, и вы предпочитаете решение, не требующее запоминания или редактирования сложных формул, вы можете использовать Kutools для Excel. Функция Извлечение N-го слова в ячейке позволяет легко выбрать конкретную позицию слова из ячейки, что делает его подходящим как для случайного использования, так и для повторяющихся задач. Этот подход рекомендуется, если вы хотите быстрое решение с минимальным риском ошибок и без ручного ввода формул.
После установки Kutools для Excel, пожалуйста, выполните следующие действия:
1. Выберите ячейку, где вы хотите отобразить результат извлечения. Затем перейдите к Kutools > Помощник формул > Помощник формул, как показано на скриншоте:
2. В диалоговом окне Помощник формул выполните следующие шаги:
- Выберите Текст из выпадающего списка Тип формулы.
- Выберите Извлечение N-го слова в ячейке из списка формул.
- Укажите исходную ячейку в текстовом поле Ячейка и введите желаемую позицию слова (например, 2 для второго слова) в текстовом поле N-е.
3. Нажмите OK, чтобы вернуть результат, затем перетащите маркер заполнения вниз, чтобы применить ту же логику ко всему списку. См. иллюстрацию:
Этот метод подходит, когда требования к извлечению часто меняются, или когда вы хотите интерфейс с подсказками вместо создания пользовательских формул каждый раз.
Извлечение слов с помощью макроса VBA (первое, последнее или N-е слово)
Для более продвинутых случаев использования - таких как динамическое извлечение первого, последнего или любого конкретного N-го слова из текста, или при работе с большими или часто обновляемыми наборами данных - макрос VBA предоставляет больше гибкости и автоматизации, чем одни формулы. VBA позволяет создать многоразовый инструмент, который может быстро обработать множество ячеек, позволяя настраивать, какое слово или группа слов извлекается в зависимости от ваших потребностей. Это может быть особенно полезно, если вы регулярно нуждаетесь в манипуляции текстом одинаковым образом или хотите избежать сложных вложенных формул.
Типичные сценарии: массовое извлечение для импортированного текста, пакетная очистка или подготовка стандартизированных отчетов.
1. Откройте редактор VBA, нажав Разработчик > Visual Basic. В окне Microsoft Visual Basic for Applications выберите Вставка > Модуль и вставьте следующий код в новый модуль:
Sub ExtractWord()
Dim Rng As Range
Dim Cell As Range
Dim WordPos As Integer
Dim Words() As String
Dim ExtractedWord As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set Rng = Application.Selection
Set Rng = Application.InputBox("Select range to extract word from", xTitleId, Rng.Address, Type:=8)
WordPos = Application.InputBox("Enter which word number to extract (1=first,2=second, etc., or -1 for last)", xTitleId, 1, Type:=1)
Application.ScreenUpdating = False
For Each Cell In Rng
Words = Split(Application.Trim(Cell.Value), " ")
If WordPos = -1 Then
If UBound(Words) >= 0 Then
ExtractedWord = Words(UBound(Words))
Else
ExtractedWord = ""
End If
ElseIf WordPos >= 1 And WordPos <= UBound(Words) + 1 Then
ExtractedWord = Words(WordPos - 1)
Else
ExtractedWord = ""
End If
Cell.Offset(0, 1).Value = ExtractedWord
Next Cell
Application.ScreenUpdating = True
MsgBox "Extraction complete! Results placed in the column to the right.", vbInformation, xTitleId
End Sub
2Запустите макрос, нажав Кнопку Выполнить или нажав F5Макрос запросит вас выбрать диапазон данных, спросит, какую позицию слова извлекать (например, 1 для первого слова, -1 для последнего слова), и затем поместит извлеченное слово в соседний столбец справа. Убедитесь, что ваш разделитель является пробелом, или адаптируйте
Split
функцию для других разделителей при необходимости.
Этот подход с использованием VBA значительно ускоряет повторяющееся массовое извлечение и идеально подходит, когда решения на основе формул становятся громоздкими. Примечание: всегда сохраняйте свою книгу перед запуском макросов и убедитесь, что макросы включены в ваших настройках безопасности.
Извлечение слов с использованием Power Query (разделение и повторное объединение)
При управлении большими таблицами или регулярными задачами импорта/экспорта Power Query предлагает надежную альтернативу для извлечения и манипулирования словами из текстовых строк. Power Query находится на вкладке Данные как Получить и преобразовать данные и позволяет визуально разделять текст по разделителям (пробелы, запятые и т.д.), извлекать требуемые слова и затем снова объединять или загружать данные обратно в Excel. Этот процесс очень повторяем и подходит для массовой очистки данных, особенно при работе с сотнями или тысячами строк.
Основные преимущества: согласованность для повторяющегося использования, визуальный интерфейс, легкая настройка при изменении требований к позициям слов.
Шаги операции:
- Выберите диапазон данных и выберите Данные > Из таблицы/диапазона, чтобы загрузить свои данные в Power Query. При появлении запроса подтвердите/создайте таблицу.
- В редакторе Power Query выберите столбец с вашим текстом.
- Нажмите Разделить столбец > По разделителю.
- Выберите Пробел или введите свой собственный разделитель, затем выберите Разделить при – Каждом появлении разделителя. Затем нажмите OK.
- Каждое слово из текста теперь будет появляться в своем собственном столбце (например, Столбец1, Столбец2 и т.д.). Если вы хотите извлечь первые два слова, объедините разделенные слова. Выберите соответствующие столбцы, щелкните правой кнопкой мыши заголовок, затем выберите Объединить столбцы из контекстного меню.
- Выберите предпочитаемый разделитель (например, пробел или запятую) и нажмите OK.
- Наконец, нажмите Закрыть и загрузить, чтобы загрузить результаты обратно в новый лист текущей книги.
Power Query также делает повторное использование процесса без усилий, поскольку вы можете обновить запрос, если ваша базовая таблица изменится, обеспечивая согласованные результаты без ручного повторного применения формул или макросов. Не забудьте проверить количество столбцов, которые создает Power Query, и учесть отсутствующие слова в коротких текстовых строках.
Больше связанных статей:
- Извлечение нескольких строк из ячейки
- Если у вас есть список текстовых строк, разделенных разрывами строк (что происходит при нажатии Alt + Enter при вводе текста), и теперь вы хотите извлечь эти строки текста в несколько ячеек, как показано на скриншоте ниже. Как можно решить это с помощью формулы в Excel?
- Извлечение подстроки из текстовой строки в Excel
- Это может быть обычной задачей для вас, когда необходимо извлекать подстроки из текстовых строк. В Excel нет прямой функции для этого, но с помощью функций ЛЕВСИМВ, ПРАВСИМВ, ПСТР и ПОИСК вы можете извлекать различные типы подстрок по мере необходимости.
- Извлечение текста между скобками из текстовой строки
- Если часть текста заключена в скобки внутри текстовой строки, и теперь вам нужно извлечь все текстовые строки между скобками, как показано на скриншоте ниже. Как можно решить эту задачу в Excel быстро и легко?
- Извлечение слова, начинающегося с определенного символа в Excel
- Например, вам может потребоваться извлечь слово, которое начинается с определенного символа «=» для каждой ячейки, как показано на скриншоте ниже. Как можно решить эту задачу быстро и легко в Excel?
- Извлечение текста после последнего вхождения определенного символа
- Если у вас есть список сложных текстовых строк, содержащих несколько разделителей (возьмем в качестве примера скриншот ниже, который содержит дефисы, запятые, пробелы в данных одной ячейки), и теперь вы хотите найти позицию последнего вхождения дефиса и затем извлечь подстроку после него.
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
- Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!
Все надстройки Kutools. Один установщик
Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.





- Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
- Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
- Совместная работа — максимальная эффективность между приложениями Office
- 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек