Excel удалить последнее слово в ячейке excel

  • Удалить последнее слово из ячейки: формула
  • Удаление с помощью регулярного выражения
  • Удалить последнее слово/N последних слов во всем столбце
  • Заключение

Удалить последнее слово в Excel

Иногда при работе с Excel возникает необходимость удалить последнее слово или несколько слов в конце фраз в ячейках.

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

Удалить последнее слово из ячейки: формула

В отличие от процедуры удаления первого слова из ячейки, где формула довольно простая в силу того, что функция ПОИСК ищет слева направо, формула для удаления последнего слова существенно сложнее.

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

1. Измеряем длину строки.
В этом поможет функция ДЛСТР.

2. Заменяем пробелы в строке на пустоту.
Здесь поможет функция ПОДСТАВИТЬ.

3. Замеряем длину строки без пробелов.
Формула получается заменой A1 на полное выражение без знака равенства во втором шаге.

=ДЛСТР(ПОДСТАВИТЬ(A1;" ";""))

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

=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;" ";""))

5. Создаём символ, которого в нашем массиве гарантированно нет.
Если вы точно уверены, можно использовать конкретный символ, например, “”.
Можно повысить уверенность с помощью функции ЮНИСИМВ – она позволяет вставлять на лист какие угодно символы из UNICODE-таблицы.
Например:

Возвращает: 宠
Полагаю, это китайский или японский.

6. Заменяем последний пробел на этот символ.
У функции ПОДСТАВИТЬ есть необязательный четвертый аргумент, обозначающий позицию символа, который нужно заменить. На втором шаге мы его не использовали, чтобы он удалил все пробелы. На этом шаге вставляем в него формулу из четвертого шага.
Третьим аргументом будет формула из пятого шага.

=ПОДСТАВИТЬ(A1;" ";ЮНИСИМВ(23456);ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;" ";"")))

7. Находим позицию этого символа.
На этот раз функция ПОИСК замечательно справится. Поскольку символ в строке гарантированно в единственном экземпляре, его можно искать и слева направо.

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

8. Вычитаем из результата единицу, чтобы узнать позицию символа перед ним.

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

9. Извлекаем из исходной ячейки текст до этой позиции.

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

10. Во всей формуле меняем A1 на ” “&A1

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

11. «Оборачиваем» результат функцией СЖПРОБЕЛЫ.
Предыдущий шаг добавит обезопасит от ошибок, но добавит лишний пробел слева. Функция удалит его и любые другие лишние пробелы между слов или в конце строки.

Итак, формула удаления последнего слова из ячейки:

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

Удаление с помощью регулярного выражения

Регулярные выражения в Excel наделяют специалиста, знакомого с их синтаксисом, практически неограниченными возможностями по поиску, извлечению, замене и удалению текстовых данных без использования монструозных мегаформул, описанных выше.

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

=REGEXREPLACE(A1;"sS+$";"")

Функциями листа можно пользоваться абсолютно бесплатно, а подробно об этом синтаксисе можно почитать в моей статье: «Регулярные выражения в Excel».

Что делать, если не хочется создавать дополнительный столбец и изменить данные прямо на месте? Здесь вам на помощь придет !SEMTools. Ниже показаны примеры удаления последнего слова или двух/трех/N слов в ячейках, прямо на месте с помощью соответствующего меню “Удалить слова” в группе инструментов «УДАЛИТЬ»:

Удалить последнее слово во всех ячейках с !SEMTools

Удаляем последние 2 слова в конце всех ячеек:

Удалить последние два слова

Удаление последних двух слов в ячейках столбца в 2 клика

Аналогично решается задача для нескольких — можно использовать пункт «Последние N», чтобы указать количество удаляемых слов, считая справа:

Удалить последние слова в ячейке

Удаляем последние 4 слова в ячейках столбца, вводя необходимое количество слов самостоятельно

Заключение

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

!SEMTools избавит вас от этой рутины и предоставит ещё более 500 таких же простых и быстрых функций. Скачайте прямо сейчас и убедитесь сами!

Смотрите похожие разделы:

  • Удалить первое слово/N первых слов в ячейках Excel;
  • Удалить последние N символов в ячейках столбца;
  • Добавить символ, слово или текст во все ячейки столбца;
  • Удалить из текста список слов.
 

Atman

Пользователь

Сообщений: 4
Регистрация: 22.02.2016

Доброго времени суток!
Нашел тему, где описывается как удалять первое слово или оставлять первое слово:

http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=8&TID=19977

Но я из неё не понял, как удалять только последнее слово в фразе.
Помогите, пожалуйста, с формулой.
Также интересует, как удалять 2, 3…n — количества последних слов в ячейке.
Благодарю заранее за помощь!

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

А

так

не пробовали спросить?

 

Atman

Пользователь

Сообщений: 4
Регистрация: 22.02.2016

Да искал, спасибо!
Просто здесь есть как удалять 2 последних слова, но нет как одно удалять…

 

sv2013

Пользователь

Сообщений: 657
Регистрация: 09.06.2015

#4

22.02.2016 15:00:31

добрый день, попробуйте функцию yyy в C1

Код
Function yyy$(t$)
    Dim x: x = Split(t): x(UBound(x)) = ""
     yyy = Join(x)
End Function

Прикрепленные файлы

  • example_22_02_2016_last_word.xlsx (7.54 КБ)

Изменено: sv201322.02.2016 15:00:49

 

Atman

Пользователь

Сообщений: 4
Регистрация: 22.02.2016

Нашел формулу :)
=ЛЕВСИМВ(A2;ПОИСК(«/»;ПОДСТАВИТЬ(A2;» «;»/»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;» «;))))-1)

 

sv2013

Пользователь

Сообщений: 657
Регистрация: 09.06.2015

#6

22.02.2016 15:18:50

Atman,для удаления k последних слов функция yyy1 в файл примере

Код
Function yyy1$(t$, k As Byte)
  Dim x, i&: x = Split(t)
 For i = UBound(x) To UBound(x) - k + 1 Step -1: x(i) = "": Next
  yyy1 = Join(x)
End Function

Прикрепленные файлы

  • example_22_02_2016_last_word1.xls (32.5 КБ)

Изменено: sv201322.02.2016 15:19:07

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

Удалить последнее слово
=ЛЕВСИМВ(СЖПРОБЕЛЫ(A2);ПОИСК(«`»;ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A2);» «;»`»;ДЛСТР(СЖПРОБЕЛЫ(A2))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A2);» «;»»))))-1)
В файле варианты для удаления N последних

Согласие есть продукт при полном непротивлении сторон.

 

Апострофф

Пользователь

Сообщений: 720
Регистрация: 06.04.2015

#8

22.02.2016 15:36:43

Цитата
sv2013 написал:
yyy1 = Join(x)

Может так лучше —

Код
yyy1 = TRIM$(Join(x)) 'зачем лишних n пробелов в конце?
 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#9

22.02.2016 15:39:20

Цитата
Atman написал: Нашел формулу

СЖПРОБЕЛЫ() в формуле не помешают. Вдруг между словами окажется больше одного пробела? Тогда результат будет не верный

Согласие есть продукт при полном непротивлении сторон.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

=ЛЕВСИМВ(A2;ПОИСК(«|»;ПОДСТАВИТЬ(A2;» «;»|»;$B$1)))
=СЖПРОБЕЛЫ(ЛЕВСИМВ(ПОДСТАВИТЬ(» «&A2;» «;ПОВТОР(» «;50));50*$B$1+50))

В В1 — количество слов с начала текста (сколько оставить).
Вторая формула не выдаст ошибку, если в В1 число больше, чем количество пробелов в слове, или В1=0

=ЛЕВСИМВ(A2;ПОИСК(«|»;ПОДСТАВИТЬ(A2&» «;» «;»|»;МАКС(1;1-$B$1+ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;» «;))))))
В В1 — количество слов с конца текста (сколько удалить)

 

Atman

Пользователь

Сообщений: 4
Регистрация: 22.02.2016

#11

22.02.2016 16:21:41

Огромное всем спасибо!

Excel formula to delete the first or last word from a cell.

You can copy and paste the formulas below for a quick fix and also learn how they work, if you’re interested.

Sections:

Remove the First Word from a Cell

Remove the Last Word from a Cell

More Versatile Formulas — Prevents Errors

Notes

Remove the First Word from a Cell

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

72a19d16bbe94715ef5f866b13512395.png

Result:

f3937e0fee32dae7e591cbcc2a72cad9.png

This assumes the text is in cell A1, change as needed for your spreadsheet.

Non-Space Characters

If your words use dashes or some other separator, just replace » « with whatever separator is used. If a dash is used, change that to «-« in your formula.

Explanation

There are three functions at work here: the RIGHT(), LEN(), and FIND() functions.

The RIGHT function is what gets the text from the right of the cell. This is needed because we are extracting all of the text except the first word; that means we need to get everything that is to the right of the first word in the cell.

The LEN and FIND functions are used to tell the RIGHT function how many characters on the right of the cell we want to get. The RIGHT function only extracts so many characters from the right of the cell.

To get everything except the first word, we need to find the space that separates the first word and the rest of the text. Use the FIND function, searching for a space » « to get the number of characters from the left of the cell until the first space. In the example above this returns 5. That is the number of characters that we want to remove from the cell.

To get the number that we want to keep, we need to use the LEN function to count all of the characters in the cell. The result of the LEN function is 12 because there are 12 characters in the cell.

In the formula above, we subtract the result of FIND from that of LEN, which is 12-5, or 7.

This tells the RIGHT function to get 7 characters from the right of the cell, which effectively removes the first word from the cell.

Remove the Last Word from a Cell

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

e745e6c796d7288baaeb88aac08ce112.png

Result:

cc28a83d16e4de326e0372c42e29d6bc.png

This assumes the text is in cell A1, change as needed for your spreadsheet.

Note: if your cells might have the ~ character in them, change that part of the formula to a character that won’t be present in the cells.

Non-Space Characters

If your words use dashes or some other separator, just replace » « with whatever separator is used. If a dash is used, change that to «-« in your formula.

Explanation

This formula uses four functions: LEFT(), LEN(), FIND(), SUBSTITUTE().

This can be a bit confusing but you don’t need to read this section in order to use the formula.

In order to remove the last word from the cell, we need to extract all of the other words to a new cell and this new cell will then not contain the last word. Basically, we are getting all of the words that are to the left of the last word, so we use the LEFT function.

To do this, we need to tell the LEFT function how many characters from the left of the cell that we want in the new cell, and that number can vary. The tricky part of the formula is what gets us this number.

FIND("~",SUBSTITUTE(A1," ","~",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))

This piece of the formula SUBSTITUTE(A1,» «,»») removes all spaces in the cell and then counts how many characters are left using the LEN function LEN(SUBSTITUTE(A1,» «,»»)). From the example above, the result of this is 10.

It then counts how many characters are in the cell when the spaces are left in it: LEN(A1). The result is 12.

Then the formula subtracts the two above numbers to get 2 in this example. This number is the total number of spaces that are in the cell and this tells the other SUBSTITUTE function which space to replace; we want to replace the last space so we can find it more easily.

Using the number we just got, the SUBSTITUTE function is used again to replace the last space in the cell with ~ and then the FIND function is used to find that ~ and then the formula knows how many characters from the left of the cell the last space is.

The formula then subtracts 1 from that number since we don’t want to include the last space in the new cell.

Now, we have the total number of characters from the left of the cell up to the space that comes before the last word in the cell and we can use the LEFT function to return everything except the last word.

If you are still a little confused, check out our tutorial on the SUBSTITUTE function in Excel

More Versatile Formulas — Prevents Errors

If you use one of the above formulas on a list and any of the cells in that list contains a single word, an error will appear.

To avoid any errors, we can use a simple IFERROR() function.

Formula 1:

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

Formula 2:

=IFERROR(LEFT(A1,FIND("~",SUBSTITUTE(A1," ","~",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))-1),A1)

This says that if there is an error, output the contents of the original cell. Errors like this usually happen if there is only one word in the cell, so this would output that single word.

Read our tutorial to learn more about the IFERROR function in Excel and suppressing errors in general.

Notes

These formulas can be confusing. I recommend simply copy/pasting them into your spreadsheet and changing the cell references as needed.

To make the new range of values text instead of formulas follow this tutorial for converting formulas to values.

Make sure to download the sample file attached to this tutorial to get these examples in Excel.

Удаление последнего слова в Excel — это простая задача, выполнить которую можно при помощи приведенной ниже формулы, которая также поможет извлечь (копировать) последние слова в новую ячейку.

Удаление последнего слова в Excel

Для выполнения данной задачи потребуется использовать формулу:

Удаление последнего слова из ячейки в таблице Excel

Все готово, задача выполнена. Аналогично можно избавиться и от начальных значений.

Извлечь последнее слова в Эксель

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

Извлечение последнего слова из ячейки в таблице Эксель

Если потребуется больше операций в данном направлении ознакомьтесь со статьей.

Как в excel удалить часть текста в ячейке после определенного символа

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

Функция ПРАВСИМВ в Excel — примеры и советы.

  • Текст (обязательно) — текст, из которого вы хотите извлечь символы.
  • число_знаков (необязательно) — количество символов для извлечения, начиная с самого правого символа.
  • Если аргумент опущен, возвращается один последний символ (по умолчанию).
  • Когда число знаков для извлечения больше, чем общее количество символов в ячейке, возвращается весь текст.
  • Если введено отрицательное число, формула возвращает ошибку #ЗНАЧ!.

  1. Подсчитайте количество разделителей в исходной строке. Это несложно:
  2. Вычисляете общую ее длину с помощью ДЛСТР(A2).
  3. Определяем длину без разделителей, используя формулу ПОДСТАВИТЬ, которая заменяет все вхождения двоеточия ничем: ДЛСТР(ПОДСТАВИТЬ(A2; «:»; «»))
  4. Наконец, вы вычитаете длину исходной строки без разделителей из общей длины: ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))
  1. Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).
  1. Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:
  1. Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:

Может ли функция Excel ПРАВСИМВ вернуть число?

  • Функция ДЕНЬ для извлечения дня: = ДЕНЬ(A1)
  • Функция МЕСЯЦ, чтобы получить месяц: = МЕСЯЦ(A1)
  • ГОД, чтобы вытащить год: = ГОД(A1)

  1. В исходных данных есть один или несколько концевых пробелов. Чтобы быстро удалить лишние пробелы в ячейках, используйте функцию СЖПРОБЕЛЫ.
  2. Аргумент число_знаковменьше нуля. Конечно, вряд ли вам захочется специально добавлять отрицательное число в формулу, но если этот аргумент вычисляется какой-то формулой Excel, и вы получаете ошибку #ЗНАЧ!, то обязательно проверьте вложенные выражения на наличие ошибок.
  3. Исходное значение — дата. Если вы внимательно следовали этому руководству, вы уже знаете, почему формула ПРАВСИМВ не может работать с датами.

Как удалить пробелы в ячейках Excel — Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры — Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии) не работает и как…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. — В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
Как извлечь текст из ячейки при помощи функции ПСТР и специальных инструментов — ПСТР — одна из текстовых функций, которые Microsoft Excel предоставляет для управления текстовыми строками. На самом базовом уровне она используется для извлечения подстроки из середины текста. В этом руководстве мы обсудим…
5 примеров с функцией ДЛСТР в Excel. — Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel — В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…
Как в Excel разделить текст из одной ячейки в несколько — В руководстве объясняется, как разделить ячейки в Excel с помощью формул и стандартных инструментов. Вы узнаете, как разделить текст запятой, пробелом или любым другим разделителем, а также как разбить строки на…
Как преобразовать текст в число в Excel — 10 способов. — В этом руководстве показано множество различных способов преобразования текста в число в Excel: опция проверки ошибок в числах, формулы, математические операции, специальная вставка и многое другое. Иногда значения в ваших…

Как удалить текст до или после определенного символа в Excel

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

Ниже приведены шаги для этого:

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

Ниже приведена формула для этого:

В приведенной выше формуле используется функция FIND (НАЙТИ), чтобы найти положение запятой в ячейке.

Вот формула, которая сделает это:

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

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

В приведенной выше формуле функция LEN используется для определения общей длины текста в ячейке, а также длины текста без запятой.

Удалить последнее слово в ячейках Excel / удалить последние N слов

Иногда при работе с Excel возникает необходимость удалить последнее слово или несколько слов в конце фраз в ячейках.

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

Удалить последнее слово из ячейки: формула

В отличие от процедуры удаления первого слова из ячейки, где формула довольно простая в силу того, что функция ПОИСК ищет слева направо, формула для удаления последнего слова существенно сложнее.

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

    Измеряем длину строки

Формула получается заменой A1 на полное выражение без знака равенства во втором шаге.
=ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))

Если вы точно уверены, можно использовать конкретный символ, например, «».
Можно повысить уверенность с помощью функции ЮНИСИМВ — она позволяет вставлять на лист какие угодно символы из UNICODE-таблицы.
Например, =ЮНИСИМВ(23456)
Возвращает: 宠
Полагаю, это китайский или японский.

У функции ПОДСТАВИТЬ есть необязательный четвертый аргумент, обозначающий позицию символа, который нужно заменить. На втором шаге мы его не использовали, чтобы он удалил все пробелы. На этом шаге вставляем в него формулу из четвертого шага.
Третьим аргументом будет формула из пятого шага.
=ПОДСТАВИТЬ(A1;» «;ЮНИСИМВ(23456);ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»)))

На этот раз функция ПОИСК замечательно справится. Поскольку символ в строке гарантированно в единственном экземпляре, его можно искать и слева направо.
=ПОИСК(ЮНИСИМВ(23456);A1;ПОДСТАВИТЬ(A1;» «;ЮНИСИМВ(23456);ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))))

=ПОИСК(ЮНИСИМВ(23456);A1;ПОДСТАВИТЬ(A1;» «;ЮНИСИМВ(23456);ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))))-1

=ЛЕВСИМВ(A1;ПОИСК(ЮНИСИМВ(23456);A1;ПОДСТАВИТЬ(A1;» «;ЮНИСИМВ(23456);ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))))-1)

Чтобы обезопасить себя от ситуаций, когда в ячейке одно слово и чтобы формула в таких случаях его удаляла, а не возвращала ошибку.
=ЛЕВСИМВ(» «&A1;ПОИСК(ЮНИСИМВ(23456);ПОДСТАВИТЬ(» «&A1;» «;ЮНИСИМВ(23456);ДЛСТР(» «&A1)-ДЛСТР(ПОДСТАВИТЬ(» «&A1;» «;»»))))-1)

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

Итак, формула удаления последнего слова из ячейки:

Удаление с помощью регулярного выражения

Регулярные выражения в Excel наделяют специалиста, знакомого с их синтаксисом, практически неограниченными возможностями по поиску, извлечению, замене и удалению текстовых данных без использования монструозных мегаформул, описанных выше.

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

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

Удалить последнее слово/N последних слов во всем столбце

Что делать, если не хочется создавать дополнительный столбец и изменить данные прямо на месте? Здесь вам на помощь придет !SEMTools. Ниже показаны примеры удаления последнего слова или двух/трех/N слов в ячейках, прямо на месте с помощью соответствующего меню «Удалить слова» в группе инструментов «УДАЛИТЬ«:

Удаляем последние 2 слова в конце всех ячеек:

Удаление последних двух слов в ячейках столбца в 2 клика

Аналогично решается задача для нескольких — можно использовать пункт «Последние N», чтобы указать количество удаляемых слов, считая справа:

Удаляем последние 4 слова в ячейках столбца, вводя необходимое количество слов самостоятельно

Заключение

Надеюсь, эта статья помогла вам, и вы с уверенностью сможете удалить последние слова из ячеек. Если хотите делать это, не прибегая к сложным формулам, станьте пользователем надстройки для Excel !SEMTools — она избавит вас от этой рутины и предоставит еще более 500 таких же простых и быстрых функций.

Удалить первое или последнее слово из строки

В этом руководстве объясняется, как удалить только первое или последнее слово из текстовой строки в ячейке с формулами в Excel.

Удалить первое слово из строки в ячейке
Удалить последнее слово из строки в ячейке


Удалить первое слово из строки в ячейке

В этом разделе вы узнаете, как использовать комбинацию функций RIGHT, LEN и FIND для удаления первого слова из строки в ячейке.

Общая формула

=RIGHT(A1,LEN(A1)-FIND(» «,A1))

аргументы

A1: Представляет ячейку, содержащую текстовую строку, из которой вы удалите первое слово.

Как пользоваться этой формулой?

1. Выберите пустую ячейку для вывода результата.

2. Введите в нее приведенную ниже формулу и нажмите Enter ключ. Затем перетащите его маркер заполнения вниз, чтобы применить формулу к другим ячейкам.

=RIGHT(B3,LEN(B3)-FIND(» «,B3))

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

Как работает эта формула?

=RIGHT(B3,LEN(B3)-FIND(» «,B3))

1. LEN(B3): Функция LEN вычисляет общую длину текстовой строки «Mr ana varela (Home)» и возвращает результат как 20;

2. FIND(» «,B3): Поскольку слова разделены пробелом, здесь функция НАЙТИ определяет положение первого пробела в текстовой строке «Mr ana varela (Home)» и возвращает результат как 3;

3. RIGHT(B3,20-3): Функция ВПРАВО извлекает 17 символов (20-3 = 17) из правой части текстовой строки «Mr ana varela (Home)». Результат — «ана варела (Дом)».


Удалить последнее слово из строки в ячейке

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

Общая формула

=LEFT(TRIM(A1),FIND(«~»,SUBSTITUTE(A1,» «,»~»,LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1),» «,»»))))-1)

аргументы

A1: Представляет ячейку, содержащую текстовую строку, из которой вы удалите последнее слово.

Как пользоваться этой формулой?

1. Выберите пустую ячейку, чтобы разместить результат. В данном случае я выбираю ячейку D3.

2. Введите в нее приведенную ниже формулу и нажмите Enter ключ. Выберите ячейку результата и перетащите ее маркер заполнения вниз, чтобы применить формулу к другим ячейкам.

=LEFT(TRIM(B3),FIND(«~»,SUBSTITUTE(B3,» «,»~»,LEN(TRIM(B3))-LEN(SUBSTITUTE(TRIM(B3),» «,»»))))-1)

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

Как работает эта формула?

=LEFT(TRIM(B3),FIND(«~»,SUBSTITUTE(B3,» «,»~»,LEN(TRIM(B3))-LEN(SUBSTITUTE(TRIM(B3),» «,»»))))-1)

1. TRIM(B3): Функция TRIM удаляет все лишние пробелы из строки «Mr ana varela (Home)» и сохраняет только один пробел между словами. Результатом будет «Мистер ана варела (Дом)»;

2. FIND(«~»,SUBSTITUTE(B3,» «,»~»,LEN(TRIM(B3))-LEN(SUBSTITUTE(TRIM(B3),» «,»»))))

  • LEN(TRIM(B3)): Поскольку функция TRIM возвращает результат как «Mr ana varela (Home)», функция LEN возвращает количество символов в строке «Mr ana varela (Home)» и возвращает результат как 20;
  • LEN(SUBSTITUTE(TRIM(B3),» «,»»)): Функция ЗАМЕНА заменяет все пробелы в текстовой строке «Mr ana varela (Home)» ничем и возвращает результат как «Mranavarela (Home)». Затем функция LEN вычисляет общую длину «Mranavarela (Home)» и получает результат 17;
  • SUBSTITUTE(B3,» «,»~»,20-17): Здесь функция ЗАМЕНА заменяет третий пробел (20-17 = 3) в текстовой строке «Mr ana varela (Home)» на символ «~». Результатом будет «Mr ana varela ~ (Home)».
  • FIND(«~»,»Mr ana varela~(Home)»): Функция НАЙТИ возвращает позицию символа «~» в текстовой строке «Mr ana varela (Home)». Здесь результат 14.

3. LEFT(«Mr ana varela (Home)»,14-1): Функция LEFT извлекает 13 символов из левой части текстовой строки «Mr ana varela (Home)». И конечный результат — г-н ана варела.


Связанные функции

Функция Excel ВПРАВО
Функция Excel RIGHT извлекает определенное количество символов из правой части текстовой строки.

Функция ДЛСТР в Excel
Функция Excel LEN возвращает количество символов в текстовой строке.

Функция поиска в Excel
Функция Excel FIND находит строку в другой строке и возвращает начальную позицию строки внутри другой.

Функция ВЛЕВО в Excel
Функция Excel LEFT извлекает заданное количество символов из левой части предоставленной строки.

Функция Excel TRIM
Функция Excel TRIM удаляет все лишние пробелы из текстовой строки и сохраняет только отдельные пробелы между словами.

Функция ПОДСТАВИТЬ в Excel
Функция ЗАМЕНА в Excel заменяет текст или символы в текстовой строке другим текстом или символами.


Родственные формулы


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

Kutools for Excel — Помогает вам выделиться из толпы

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

  • Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
  • Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
  • Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
  • 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.

Лента Excel (с Kutools for Excel установлены)


Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
  • Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.

Снимок экрана Excel (с установленной вкладкой Office)

Понравилась статья? Поделить с друзьями:
  • Excel удаление строк в одной ячейке
  • Excel удалить подстроку в строке
  • Excel удалить повторы в столбце excel
  • Excel удаление символов после определенного знака
  • Excel удалить по маске