Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

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

Author Xiaoyang Last modified

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

a screenshot showing the original text string and the result text string with the first or last word removed

Содержание:


Удаление первого или последнего слова из текстовой строки с помощью формул

Использование формул Excel предлагает простой способ без написания кода для удаления первого или последнего слова из ячейки. Этот метод подходит, когда требуется динамический подход, который автоматически обновляется при изменении исходного текста. Однако обратите внимание, что эти формулы предполагают, что слова разделены одинарными пробелами и что в тексте нет начальных, конечных или нескольких подряд идущих пробелов. Пожалуйста, проверьте пробелы в своих данных перед применением этих решений.

Удаление первого слова из текстовой строки:

1. Пожалуйста, введите эту формулу в пустую ячейку, куда вы хотите поместить результат (например, ячейку B2):

=RIGHT(A2,LEN(A2)-FIND(" ",A2))

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

a screenshot showing how to use formula to remove the first word from a text string

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

a screenshot showing all text strings with the first word removed

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

=RIGHT(TRIM(A2),LEN(TRIM(A2))-FIND(" ",TRIM(A2)))

Это гарантирует точность формулы даже если некоторые ячейки имеют несогласованные пробелы.

Удаление последнего слова из текстовой строки:

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

=LEFT(TRIM(A2),FIND("~",SUBSTITUTE(A2," ","~",LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))))-1)

Эта формула работает, находя местоположение последнего пробела и извлекая весь текст до него. Убедитесь, что между словами нет лишних пробелов, или используйте функцию TRIM, как указано выше. После ввода формулы перетащите маркер заполнения, чтобы применить её ко всем необходимым строкам. Все последние слова в столбце будут удалены, как показано ниже:

a screenshot showing how to use formula to remove the last word from text strings

Напоминание об ошибке: Если ячейка содержит только одно слово и нет пробелов, эти формулы вернут либо ошибку, либо пустое значение. Если ваши данные могут включать такие случаи, вы можете обернуть формулу IFERROR, чтобы избежать ошибок, например:

=IFERROR(RIGHT(A2,LEN(A2)-FIND(" ",A2)),"")

Удаление первого или последнего слова с помощью «Текст по столбцам» (встроенная функция Excel)

В некоторых случаях, особенно при обработке коротких или статических наборов данных, встроенная функция Excel «Текст по столбцам» может предоставить интуитивно понятный и визуальный подход к разделению слов. Этот подход идеален, когда вы хотите быстро разделить все слова из текстовой строки на столбцы, а затем выборочно их объединить (исключив первое или последнее слово). Хотя текст не будет автоматически обновляться при изменении исходной ячейки (не динамичный, как формулы), этот метод может быть очень удобным для разового очищения данных.

Шаги:

  • 1. Выберите столбец, содержащий ваши текстовые данные для разделения.
  • 2. Перейдите на вкладку Данные и нажмите Текст по столбцам.
  • 3. В открывшемся мастере выберите Разделители, затем нажмите Далее.
  • 4. Отметьте только разделитель Пробел и нажмите Далее.
  • 5. Выберите место назначения для разделённых данных, затем нажмите Готово.
  • 6. После разделения столбцы будут заполнены отдельными словами из каждой ячейки. Чтобы удалить первое слово, просто объедините все столбцы, кроме первого, используя CONCATENATE или TEXTJOIN (если доступно). Аналогично, чтобы удалить последнее слово, объедините все столбцы, кроме последнего.

Вы можете использовать такую формулу (предполагая, что ваши разделённые данные теперь находятся в столбцах B, C, D для одной ячейки):

=CONCATENATE(C2," ",D2)

Если вам нужно объединить много столбцов и у вас есть Excel 2016 или более поздней версии, используйте:

=TEXTJOIN(" ",TRUE,C2:E2)

Предупреждения: Метод «Текст по столбцам» перезаписывает существующие данные справа от выбранного диапазона, если вы не будете осторожны. Всегда убедитесь, что соседние столбцы пусты, или сначала скопируйте свои данные в чистую область для безопасности. Этот метод лучше всего подходит для быстрой ручной обработки, чем для автоматических обновлений.

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


Удаление первого или последнего слова из текстовой строки с помощью макроса VBA

Для более сложных или повторяющихся массовых операций — таких как очистка больших наборов данных, автоматическое удаление или работа со сложными сценариями — макрос VBA очень эффективен. VBA позволяет вам удалить первое или последнее слово для всего диапазона ячеек всего несколькими кликами. Перед запуском макроса убедитесь, что ваши данные не содержат необычных пробелов или специальных непрерываемых пробелов, поскольку это может повлиять на точность разделения.

Как использовать этот код VBA:

1. Нажмите Разработчик > Visual Basic, чтобы открыть редактор Microsoft Visual Basic for Applications. В новом окне нажмите Вставка > Модуль. Вставьте один из следующих кодов в модуль.

Удаление первого слова из выбранных ячеек:

Sub RemoveFirstWord()
    Dim WorkRng As Range
    Dim Rng As Range
    Dim arr As Variant
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select range to remove first word", xTitleId, WorkRng.Address, Type:=8)
    For Each Rng In WorkRng
        If InStr(Rng.Value, " ") > 0 Then
            arr = Split(Rng.Value, " ")
            Rng.Value = Mid(Rng.Value, InStr(Rng.Value, " ") + 1)
        End If
    Next
End Sub

2. Нажмите F5 или кнопку Запуск, чтобы выполнить код. Макрос затем выведет диалоговое окно, чтобы вы могли выбрать ячейки для обработки. Нажав ОК, ваши ячейки будут обновлены путем удаления первого слова из каждой выбранной ячейки.

Удаление последнего слова из выбранных ячеек:

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

Sub RemoveLastWord()
    Dim WorkRng As Range
    Dim Rng As Range
    Dim arr As Variant
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select range to remove last word", xTitleId, WorkRng.Address, Type:=8)
    For Each Rng In WorkRng
        If InStr(Rng.Value, " ") > 0 Then
            arr = Split(Rng.Value, " ")
            Rng.Value = Left(Rng.Value, Len(Rng.Value) - Len(arr(UBound(arr))) - 1)
        End If
    Next
End Sub

Предупреждения: Эти макросы удаляют только первое или последнее слово, разделённое пробелами, в каждой ячейке вашего выбора. Если ячейка содержит только одно слово (нет пробелов), эта ячейка остаётся неизменной. Всегда работайте с копией ваших данных или сохраните свою книгу перед запуском кода VBA, так как изменения не обратимы.

Преимущества: VBA позволяет быстро обрабатывать большие объёмы данных и весьма эффективен для автоматизации повторяющихся задач по очистке, особенно при работе с большими таблицами данных.

Устранение неполадок: Если вы столкнулись с сообщениями об ошибках времени выполнения, убедитесь, что все значения в вашем выборе имеют текстовый формат. Пустые или ошибочные ячейки могут привести к тому, что макрос пропустит или остановится.


Для любого метода, который вы выберете — формулы, Текст по столбцам или VBA — рекомендуется всегда проверять результаты на согласованность данных, особенно когда текст может включать лишние пробелы, знаки препинания или неожиданные последовательности слов. Всегда делайте резервную копию исходных данных, особенно при выполнении массовых правок или использовании незнакомых макросов. Если вам нужны более гибкие или надёжные решения для очистки или разделения текста в Excel, Kutools for Excel предлагает комплексный набор утилит, которые справляются с различными задачами по разделению текста и форматированию без сложных формул или кода.


Разделение значений ячеек на несколько столбцов и строк по определённому разделителю:

С помощью утилиты Разделение ячеек Kutools for Excel вы можете быстро разделить текстовую строку в ячейке на несколько столбцов или строк  по пробелу, запятой, новой строке или любому другому указанному разделителю.

a screenshot showing how to use Kutools for Excel to easily split cells into multiple rows or columns by a certian separator

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


Связанные статьи:

Как удалить первые, последние или определённые символы из текста в Excel?


Лучшие инструменты для повышения продуктивности в Office

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

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