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

На чтение 5 мин Просмотров 11к. Опубликовано 16.05.2022

Люди, которые только начинают работать в Excel часто встречаются с таким вопросом.

Допустим, у нас есть такая табличка:

Примерно так выглядит удаление всех символов после «,».

Это можно сделать разными способами. Мы рассмотрим несколько.

Итак, начнём!

Содержание

  1. С помощью функции «Найти и заменить»
  2. С помощью формул
  3. С помощью функции «Заполнить»
  4. С помощью Visual Basic

С помощью функции «Найти и заменить»

Это, наверное, самый быстрый и удобный способ.

Допустим, у нас та же табличка и задача:

Пошаговая инструкция:

  • Копируем и вставляем столбик А в В;

  • Выделите столбик и щелкните «Главная»;

  • Далее — «Найти и выделить» -> «Заменить…»;

  • В первом параметре укажите «,*»;

  • Второй параметр не меняйте;

  • Щелкните «Заменить все».

Готово! Вот результат:

Как это работает?

Символ * означает неопределенное количество символов.

Так как мы используем «,*», то это значит, что программе нужно заменить запятую и все символы после неё на пустое место.

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

С помощью формул

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

Допустим, у нас есть такая табличка:

Формула принимает такой вид:

=ЛЕВСИМВ(A2;НАЙТИ(",";A2)-1)

Функция НАЙТИ возвращает порядковый номер запятой.

Это простой пример, давайте рассмотрим кое-что посложнее.

Теперь у нас такая табличка:

Формула, для этого примера, принимает такой вид:

=ЛЕВСИМВ(A2;НАЙТИ("!";ПОДСТАВИТЬ(A2;",";"!";2))-1)

Итак, также как в прошлый раз — не получится. Так как НАЙТИ будет возвращать порядковый номер первой запятой, а нам надо найти его для второй.

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

И все бы хорошо, только в этом примере в каждой строке у нас ровно 2 запятые. А что делать если их неопределенное количество? Ведь в больших данных вы не будете выверять сколько запятой в каждой строке.

Вот пример:

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

Для этого примера, формула принимает такой вид:

=ЛЕВСИМВ(A2;НАЙТИ("!";ПОДСТАВИТЬ(A2;",";"!";ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;",";","))))-1)

Итак, функция ДЛСТР сначала находит количество символов в строчке с запятыми, а потом без них.

А после вычитает из первого — второе. Таким образом мы получаем количество запятых в строчке.

А затем мы заменяем последнюю на восклицательный знак.

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

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

С помощью функции «Заполнить»

Функция «Заполнить», это довольно давний инструмент. Он может помочь нам и в этом случае.

Как он работает?

Очень просто — вы просто делаете что угодно и после используете функцию. Она пытается понять логику ваших действий и продолжить её.

Давайте рассмотрим пример.

Допустим, у нас есть та же табличка:

Пошаговая инструкция:

  • В первую ячейку столбика В введите то, что должно получиться после обработки;

  • В следующую ячейку, то же самое;

  • А теперь выделите столбик;

  • И щелкните на «Главная» -> «Заполнить» -> «Мгновенное заполнение»;

Готово! Вот результат:

Эту функцию, естественно, можно использовать не только для удаления текста после символа. Она работает там, где есть логика.

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

С помощью Visual Basic

И, как обычно, разберем вариант с помощью Visual Basic.

Мы создадим свою собственную функцию и будем использовать её для обработки данных.

Это крайне удобно, если вы делаете что-либо очень часто. Например, как в нашем случае, удаляете данные после символа.

Код Visual Basic:

Function LastPosition(rCell As Range, rChar As String) 
'This function gives the last position of the specified character 
'This code has been developed by Sumit Bansal (https://trumpexcel.com) 
Dim rLen As Integer 
rLen = Len(rCell)   

For i = rLen To 1 Step -1   
If Mid(rCell, i - 1, 1) = rChar Then 
LastPosition = i - 1 
Exit Function 
End If   

Next i   E

nd Function

Код, чтобы он работал, нужно вставить в Visual Basic -> «Insert» -> «Module».

Давайте рассмотрим пример её использования.

Допустим, у нас есть такая табличка. Формула принимает такой вид:

=ЛЕВСИМВ(A2;LastPosition(A2;",")-1)

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

С помощью Visual Basic все проще.

Вот и все! Если вам нужно сделать что-то подобное 1-2 раза, то лучше всего использовать функцию «Найти и заменить…», а если вы делаете это постоянно, то используйте Visual Basic.

Надеюсь, эта статья оказалась полезна для вас!

 

Добрый день. Оцените, пожалуйста проблему. Просто скажите, решается она в Excel или нет.

Работаю со словарями. Есть на 16000 слов. Каждое из которых после знака # имеет пояснение:
аароновец#аар`оновец%аар`оновец, -вца, тв. -вцем
Нужно получить столбец слов, такой чтобы в каждой ячейке было только одно слово.

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

  • Пример.xls (31.5 КБ)

 

Владимир

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

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

=ПСТР(A2;1;ПОИСК(СИМВОЛ(35);A2)-1)

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

ikki

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

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

ctrl+h
найти: #*
заменить на: (оставить пустым)

заменить все.

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

Nic70y

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

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

Win7 MSO 2013

=ПСТР(A2;1;ПОИСК(«#»;A2)-1)
Примерно тоже что и у Владимира.

 

Спасибо!  :) Все отлично работает!

 

Мотя

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

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

#6

30.12.2012 21:57:17

Цитата
ikki пишет: найти: #*
заменить на: (оставить пустым)

Как всегда — СУПЕР-решение!

 

ikki

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

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

скажите спасибо команде разработчиков Excel’я
а я всего лишь помню о такой функции.
 :D

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

Мотя

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

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

#8

30.12.2012 22:08:29

Цитата
ikki пишет: скажите спасибо команде разработчиков Excel’я

Эти команды знают все, однако, почти все сразу начинают искать функции…

 

Сергей

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

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

#9

05.01.2013 08:19:00

Цитата
ikki: найти…заменить

Браво!

 

Jonik

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

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

Ребят привет!
Скажите как мне убрать текст после знака «->» который e->j.
Вот пример:

xxxxxxxxx:eeeeeeee->james bunston->>->>>hghghl->>>>hghg

 

Юрий М

Модератор

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

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

 

Jonik

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

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

 

Юрий М

Модератор

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

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

ctrl+h
найти: ->*
заменить на: (оставить пустым)

 

Jonik

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

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

А все спасибо Вам большое!!!

 

iba2004

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

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

Саш, привет!
Красава просто!!!  :)  Нужное правило Excel’я!!!
Спасибо!

 

Chara

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

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

Спасибо за предоставление решения!
У меня файл типа:

GiGwi  75264 Игрушка д/кошек Птичка с перьями 12 см 1*100
GiGwi 75017 Дразнилка д/кошек с рыбками на длинной палке 1*384
GiGwi 75018 Дразнилка д/кошек с рыбкой на длинной палке 1*384
GiGwi 75026 Игрушка д/кошек Рыбка дразнилка на палец с кольцом 1*96

Нужно удалить символы хоты бы после знака «*».
Когда пробую делать через «заменить», то удаляется текст о всей ячейке :(
В чем проблема?

В идеале конечно надо удалить 1 символ перед звездочкой и ВСЕ после звездочки.
Буду благодарна за помощь.

 

Z

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

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

Win 10, MSO 2013 SP1

#17

06.01.2015 19:24:16

Цитата
Chara пишет:
В идеале конечно надо удалить 1 символ перед звездочкой и ВСЕ после звездочки.

Ага — звездочку оставляем?!.
ps Тему с самого начала освоили? Правила — Приемы — Пример… ;)

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Chara

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

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

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

ikki

посоветовал (поставила найти **, заменить на.. пустое поле), чтобы удалить все после со звездочкой, НО у меня удаляется вся информация в ячейке.

 

RAN

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

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

#19

06.01.2015 20:42:50

Найти

Код
??~**

Заменить — пусто.

 

Мотя

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

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

Вариант:
текст по столбцам с разделителем *

 

Chara

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

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

RAN

, вы чудо! Спасибо! все получилось!

 

RAN

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

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

А игрушку для кошек? Хочууууу.  ;)

 

Здравствуйте!
похожую ситуацию помогите решить, пожалуйста!
есть текст в ячейке, нужно получить набор символов справа после заданного, например:
«Сон в летнюю ночь» Шекспир
как в отдельную ячейку вытащить Шекспира?
Заранее спасибо!

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

ElenaEfimova, на будущее: лучше создавать свою тему с описанием своей проблемы, если в этой теме ни одно решение не подошло.
Если надо получить последнее слово, то вот:

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

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Kuzmich

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

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

#25

04.02.2016 17:44:52

UDF

Код
Function Slovo(cell As String) As String
   Slovo = Split(cell, """ ")(1)
End Function
 

sv2013

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

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

#26

04.02.2016 17:48:06

вариант функции

Код
Function uuu$(t$)
  uuu = Split(t, "#")(0)
End Function

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

  • Пример (17)_4_02_2016_pl.xls (40 КБ)

Изменено: sv201304.02.2016 17:48:27

 

Kuzmich

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

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

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

#28

04.02.2016 18:02:04

Что по мне, то правильнее через VBA было бы так:

Код
Function LastWord(text as string,optional sDel as string = " ")
dim arr
arr = Split(text, sDel)(0)
LastWord = arr(ubound(arr))
End Function

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Большое спасибо за помощь, правила форума на будущее учла :)

 

ardak78

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

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

#30

15.10.2019 17:00:45

Всем привет!
Вроде аналогичная проблема, но не могу понять как сделать.
Задача: убрать с конца текст в строке до первого символа «>>» ну и сам символ в месте с ним, но в тексте их несколько.
Пример:  собака>>кот>>мышь>>тюлень>>сова
Должно получиться:  собака>>кот>>мышь>>тюлень
За ранее благодарю Вас!
Название животных меняется!
Просто нужно убирать последнее слово с >>

Изменено: ardak7815.10.2019 17:10:52

Содержание:

  1. Удаление текста после символа с помощью функции поиска и замены
  2. Удалить текст с помощью формул
  3. Удаление текста с помощью заливки Flash
  4. Удалить текст с помощью VBA (пользовательская функция)

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

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

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

В этом уроке я покажу вам, как удалить текст до или после определенного символа в Excel (на разных примерах).

Итак, давайте начнем с нескольких простых примеров.

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

Если вы хотите быстро удалить весь текст после определенной текстовой строки (или перед текстовой строкой), вы можете сделать это с помощью «Найти и заменить» и подстановочных знаков.

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

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

  1. Скопируйте и вставьте данные из столбца A в столбец B (это также необходимо для сохранения исходных данных)
  2. Выделив ячейки в столбце B, перейдите на вкладку «Главная».
  3. В группе «Редактирование» нажмите «Найти и выбрать».
  4. В параметрах, которые появляются в раскрывающемся списке, щелкните параметр «Заменить». Откроется диалоговое окно «Найти и заменить».
  5. В поле «Найти» введите ,* (т.е. запятая, за которой следует звездочка)
  6. Оставьте поле «Заменить на» пустым.
  7. Нажмите кнопку «Заменить все».

Вышеупомянутые шаги позволят найти запятую в наборе данных и удалить весь текст после запятой (включая запятую).

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

Как это работает?

* (знак звездочки) — это подстановочный знак, который может представлять любое количество символов.

Когда я использую его после запятой (в поле «Найти»), а затем нажимаю кнопку «Заменить все», он находит первую запятую в ячейке и считает ее совпадением.

Это связано с тем, что знак звездочки (*) считается соответствием всей текстовой строке, следующей за запятой.

Поэтому, когда вы нажимаете кнопку «Заменить все», она заменяет запятую и весь последующий текст.

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

Если вы хотите удалить все символы перед запятой, измените запись в поле поиска, поставив знак звездочки перед запятой (* вместо, *)

Удалить текст с помощью формул

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

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

Ниже приведена формула для этого:
= ЛЕВЫЙ (A2; НАЙТИ (";"; A2) -1)

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

Этот номер позиции затем используется функцией LEFT для извлечения всех символов перед запятой. Поскольку мне не нужна запятая как часть результата, я вычел 1 из полученного значения формулы поиска.

Это был простой сценарий.

Возьмем немного сложный.

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

Вот формула, которая сделает это:
= ЛЕВЫЙ (A2; НАЙТИ ("!", ПОДСТАВИТЬ (A2, ",", "!", 2)) - 1)

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

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

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

Эта позиция восклицательного знака используется в функции LEFT для извлечения всего, что находится до второй запятой.

Все идет нормально!

Но что, если в наборе данных есть непоследовательное количество запятых.

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

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

Ниже приведена формула, которая сделает это
= ЛЕВЫЙ (A2; НАЙТИ ("!", ПОДСТАВИТЬ (A2, ",", "!", LEN (A2) -LEN (ПОДСТАВИТЬ (A2, ",", "")))) - 1)

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

Когда я вычитаю эти два значения, получается общее количество запятых в ячейке.

Таким образом, это дало бы мне 3 для ячейки A2 и 2 для ячейки A4.

Это значение затем используется в формуле ЗАМЕНА для замены последней запятой восклицательным знаком. И затем вы можете использовать левую функцию для извлечения всего, что находится слева от восклицательного знака (где раньше была последняя запятая)

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

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

Удаление текста с помощью заливки Flash

Flash Fill — это инструмент, который был представлен в Excel 2013 и доступен во всех последующих версиях.

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

Поэтому, если вы хотите удалить текст до или после определенного символа, вам просто нужно показать flash fairy, как будет выглядеть результат (введя его вручную пару раз), и flash fill автоматически распознает узор и даст вам результаты, достижения.

Позвольте показать вам это на примере.

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

Вот шаги, чтобы сделать это с помощью Flash Fill:

  1. В ячейке B2, которая является соседним столбцом наших данных, вручную введите «Jeffery Haggins» (что является ожидаемым результатом).
  2. В ячейке B3 введите «Тим Скотт» (ожидаемый результат для второй ячейки).
  3. Выберите диапазон B2: B10
  4. Перейдите на вкладку «Главная»
  5. В группе «Редактирование» щелкните раскрывающийся список «Заливка».
  6. Нажмите на Flash Fill.

Вышеупомянутые шаги дадут вам результат, как показано ниже:

Вы также можете использовать сочетание клавиш Flash Fill. Ctrl + E после выбора ячеек в столбце результатов (столбец B в нашем примере)

Flash Fill — замечательный инструмент, и в большинстве случаев он способен распознать узор и дать вам правильный результат. но в некоторых случаях он может не распознать шаблон правильно и может дать неверные результаты.

Так что не забудьте еще раз проверить результаты Flash Fill.

И точно так же, как мы удалили весь текст после определенного символа с помощью флэш-заливки, вы можете использовать те же шаги, чтобы удалить текст перед определенным символом. просто покажите вручную в соседнем столбце flash fill, как результат должен выглядеть как мой Интернет, а все остальное сделает он.

Удалить текст с помощью VBA (пользовательская функция)

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

Как показано выше, найти последнее вхождение этого символа хорошим означает использовать смесь формул.

Если это то, что вам нужно делать довольно часто, вы можете упростить этот процесс, создав настраиваемую функцию с помощью VBA (называемую функциями, определяемыми пользователем).

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

Ниже кода VBA, который можно использовать для создания настраиваемой функции в Excel:
Функция LastPosition (rCell As Range, rChar As String) 'Эта функция выдает последнюю позицию указанного символа' Этот код был разработан Sumit Bansal (https://trumpexcel.com) Dim rLen As Integer rLen = Len (rCell) For i = rLen To 1 Step -1 If Mid (rCell, i - 1, 1) = rChar Then LastPosition = i - 1 Выход из функции End If Next i End Function
Вам необходимо поместить код VBA в обычный модуль редактора VB или в личную книгу макросов. Когда он у вас есть, вы можете использовать его как любую другую обычную функцию рабочего листа в книге.

Эта функция принимает 2 аргумента:

  1. Ссылка на ячейку, для которой вы хотите найти последнее вхождение определенного символа или текстовой строки.
  2. Символьная или текстовая строка, позицию которой вам нужно найти

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

Ниже приведена формула, которая сделает это:
= ЛЕВЫЙ (A2; LastPosition (A2; ",") - 1)

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

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

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

Вот некоторые из писем, которые вы можете использовать для быстрого удаления текста до или после определенного символа в Excel.

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

Надеюсь, вы нашли этот урок полезным.

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

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


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

Чтобы удалить весь текст до или после определенного символа с помощью функции «Найти и заменить», сделайте следующее.

1. Выберите ячейки, в которых вы хотите удалить текст до или после определенного символа, нажмите Ctrl + H , чтобы открыть Найти и заменить Диалог.

В диалоговом окне «Найти и заменить»:

1. Чтобы удалить все перед конкретным символом, например запятой, введите *, в Найти то, что текстовое окно;

2. Чтобы удалить все после определенного символа, например запятой, введите ,* в Найти то, что текстовое окно;

Ноты:

1. Вы можете изменить запятую на любой символ по своему усмотрению.

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

2. Держать Заменить пустое текстовое поле, а затем щелкните значок Заменить все кнопка. Смотрите скриншот:



Удалять тексты до или после первого / последнего конкретного символа по формуле

В этом разделе будут показаны формулы удаления всего до или после первого / последнего конкретного символа из ячеек в Excel.

Чтобы удалить все до первой запятой, пожалуйста:

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

Формула: Удалите все до первой запятой

= ВПРАВО (B5, LEN (B5)-НАХОДИТЬ(«,«,B5))

Ноты:

1. В приведенной выше формуле B5 — это ячейка, из которой вы удаляете текст, а «,» — это символ, на основе которого вы удаляете тексты.

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

= ВПРАВО (B5, LEN (B5) -НАЙТИ («@», ПОДСТАВИТЬ (B5Характер«,» @ «, (LEN (B5) -ЛЕН (ЗАМЕНА (B5Характер«,» «))) / LEN («Характер«))))

Удалить все после первой запятой, пожалуйста:

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

Формула: Удалите все после первой запятой

= ЛЕВЫЙ (B5; НАЙТИ («;»; B5) -1)

Ноты:

1. В приведенной выше формуле B5 — это ячейка, из которой вы удаляете текст, а «,» — это символ, на основе которого вы удаляете тексты.

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

= ВЛЕВО (B5, НАЙТИ («@», ПОДСТАВИТЬ (B5персонаж«,» @ «, LEN (B5) -ЛЕН (ЗАМЕНА (B5персонаж«,» «)))) — 1)


Удалять тексты до или после n-го символа вхождения по формуле

Приведенные ниже формулы могут помочь удалить все до или после n-го символа вхождения из ячеек в Excel.

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

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

Формула: Удалите все до второй запятой

= ПРАВИЛЬНО (ЗАМЕНИТЬ (B5«,«, СИМВОЛ (9), 2), LEN (B5) — НАЙТИ (СИМВОЛ (9), ЗАМЕНИТЬ (B5«,«, СИМВОЛ (9), 2), 1) + 1)

Ноты:

1. В формулах B5«,» а также 2 число означает, что все содержимое после второй запятой будет удалено из ячейки B5.

2. Вы можете изменить «,» а также 2 номер на любой символ и номер позиции вхождения по мере необходимости.

Чтобы удалить все после n-го символа вхождения из ячеек, тебе нужно:

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


Формула: Удалить все после второй запятой

= ЛЕВЫЙ (ПОДСТАВИТЬ (B5,«, СИМВОЛ (9),2), НАЙТИ (СИМВОЛ (9), ЗАМЕНИТЬ (B5,«, СИМВОЛ (9),2), 1) -1)

Ноты:

1. В формулах B5«,» а также 2 число означает, что все содержимое после второй запятой будет удалено из ячейки A7.

2. Вы можете изменить «,» а также 2 номер на любой символ и номер позиции вхождения по мере необходимости.


Легко удаляйте тексты до/после определенного символа с помощью Kutools for Excel

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

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

2. в Разделить клетки диалоговом окне выберите Разделить на столбцы вариант в Тип раздел, а в Разделить на раздел, выберите Другое вариант и введите запятую в пустое поле, а затем щелкните OK кнопка. Смотрите скриншот:

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

Затем вы можете увидеть, что выбранные ячейки разделены определенным символом — запятой. Смотрите скриншот:

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


Kutools for Excel — Помогает всегда закончить работу раньше времени, чтобы у вас было больше времени, чтобы наслаждаться жизнью

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

300 расширенных инструментов для 1500 рабочих сценариев сделают вашу работу намного проще, чем когда-либо.
Больше не нужно запоминать формулы и коды VBA, теперь дайте вашему мозгу отдохнуть.
Сложные и повторяющиеся операции могут быть выполнены разовой обработкой за секунды.
Сократите количество операций с клавиатурой и мышью каждый день, попрощайтесь с профессиональными заболеваниями прямо сейчас.
Станьте экспертом по Excel за 3 минуты, это поможет вам быстро получить признание и продвижение по службе.
110,000 300 высокоэффективных людей и выбор XNUMX+ всемирно известных компаний.
Сделайте так, чтобы ваши 39.0 доллара были больше, чем обучение других людей.
Полнофункциональная бесплатная пробная версия 30-день. 60-дневная гарантия возврата денег без объяснения причин.

Содержание

  1. Как удалить все до или после определенного символа в Excel
  2. С помощью функции «Найти и заменить»
  3. С помощью формул
  4. С помощью функции «Заполнить»
  5. С помощью Visual Basic
  6. Excel убрать все после пробела
  7. Простое разделение ячеек на несколько ячеек / строк (список столбцов) в Excel
  8. Как удалить символы После знака в Excel
  9. Видеоинструкция
  10. Как удалить знаки после символа в Excel
  11. Удаление знака после запятой в Эксель
  12. После пробела в Excel
  13. Вам также будет интересно
  14. Комментарии 2

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

Люди, которые только начинают работать в Excel часто встречаются с таким вопросом.

Допустим, у нас есть такая табличка:

Примерно так выглядит удаление всех символов после «,».

Это можно сделать разными способами. Мы рассмотрим несколько.

С помощью функции «Найти и заменить»

Это, наверное, самый быстрый и удобный способ.

Допустим, у нас та же табличка и задача:

  • Копируем и вставляем столбик А в В;

  • Выделите столбик и щелкните «Главная»;

  • Далее — «Найти и выделить» -> «Заменить…»;

  • В первом параметре укажите «,*»;

  • Второй параметр не меняйте;

  • Щелкните «Заменить все».

Готово! Вот результат:

Как это работает?

Символ * означает неопределенное количество символов.

Так как мы используем «,*», то это значит, что программе нужно заменить запятую и все символы после неё на пустое место.

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

С помощью формул

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

Допустим, у нас есть такая табличка:

Формула принимает такой вид:

Функция НАЙТИ возвращает порядковый номер запятой.

Это простой пример, давайте рассмотрим кое-что посложнее.

Теперь у нас такая табличка:

Формула, для этого примера, принимает такой вид:

Итак, также как в прошлый раз — не получится. Так как НАЙТИ будет возвращать порядковый номер первой запятой, а нам надо найти его для второй.

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

И все бы хорошо, только в этом примере в каждой строке у нас ровно 2 запятые. А что делать если их неопределенное количество? Ведь в больших данных вы не будете выверять сколько запятой в каждой строке.

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

Для этого примера, формула принимает такой вид:

Итак, функция ДЛСТР сначала находит количество символов в строчке с запятыми, а потом без них.

А после вычитает из первого — второе. Таким образом мы получаем количество запятых в строчке.

А затем мы заменяем последнюю на восклицательный знак.

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

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

С помощью функции «Заполнить»

Функция «Заполнить», это довольно давний инструмент. Он может помочь нам и в этом случае.

Как он работает?

Очень просто — вы просто делаете что угодно и после используете функцию. Она пытается понять логику ваших действий и продолжить её.

Давайте рассмотрим пример.

Допустим, у нас есть та же табличка:

  • В первую ячейку столбика В введите то, что должно получиться после обработки;

  • В следующую ячейку, то же самое;

  • А теперь выделите столбик;

  • И щелкните на «Главная» -> «Заполнить» -> «Мгновенное заполнение»;

Готово! Вот результат:

Эту функцию, естественно, можно использовать не только для удаления текста после символа. Она работает там, где есть логика.

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

С помощью Visual Basic

И, как обычно, разберем вариант с помощью Visual Basic.

Мы создадим свою собственную функцию и будем использовать её для обработки данных.

Это крайне удобно, если вы делаете что-либо очень часто. Например, как в нашем случае, удаляете данные после символа.

Код Visual Basic:

Код, чтобы он работал, нужно вставить в Visual Basic -> «Insert» -> «Module».

Давайте рассмотрим пример её использования.

Допустим, у нас есть такая табличка. Формула принимает такой вид:

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

С помощью Visual Basic все проще.

Вот и все! Если вам нужно сделать что-то подобное 1-2 раза, то лучше всего использовать функцию «Найти и заменить…», а если вы делаете это постоянно, то используйте Visual Basic.

Надеюсь, эта статья оказалась полезна для вас!

Источник

Excel убрать все после пробела

Например, вы хотите удалить все символы после последнего пробела из ячеек, как вы могли бы легко сделать это в Excel? А если убрать все символы после первого пробела? Для вас есть несколько решений:

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

Удалите все символы после последнего пробела

Выберите пустую ячейку, введите формулу =LEFT(A2,FIND(«^^»,SUBSTITUTE(A2,» «,»^^»,LEN(A2)-LEN(SUBSTITUTE(A2,» «,»»))))-1) (A2 — это ячейка, в которой вы удалите все символы после последнего пробела) и перетащите маркер заполнения в нужный диапазон.

Формула слишком сложна для запоминания? Сохраните формулу как запись Auto Text для повторного использования одним щелчком мыши в будущем!
Подробнее . Бесплатная пробная версия

И тогда вы увидите все символы после удаления последнего пробела в каждой ячейке. Смотрите скриншот:

Удалите все символы после первого пробела

Выберите пустую ячейку, введите формулу = ЛЕВЫЙ (A2; НАЙТИ («»; A2) -1) (A2 — это ячейка, в которой вы удалите все символы после первого пробела), и перетащите маркер заполнения вниз до нужного диапазона.

Простое разделение ячеек на несколько ячеек / строк (список столбцов) в Excel

Обычно пользователи Excel могут применять Текст в столбцы функция разбить одну ячейку на несколько столбцов, но нет прямого метода преобразования одной ячейки в несколько строк. Однако Kutools для Excel Разделить клетки Утилита может помочь вам легко сделать это, как показано на скриншоте ниже.

Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30 -день, кредитная карта не требуется! Get It Now

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

1. Нажмите другой + F11 одновременно клавиши, чтобы открыть окно Microsoft Visual Basic для приложений.

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

VBA: удалить все символы после последнего пробела в Excel

3. Сохраните функцию, определяемую пользователем, и закройте окно Microsoft Visual Basic для приложений.

4. Выберите пустую ячейку и введите формулу. = RemoveAfterLastSpace (A2) (A2 — это ячейка, в которой вы удалите все символы после последнего пробела), и перетащите маркер заполнения в нужный диапазон.

И тогда вы увидите все символы после удаления последнего пробела из каждой ячейки. Смотрите скриншот:

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

Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30 -день, кредитная карта не требуется! Бесплатная пробная версия сейчас!

Kutools for Excel — Combines more than 300 Advanced Functions and Tools for Microsoft Excel

1. Выберите диапазон, в котором вы удалите все символы после первого пробела из каждой ячейки, и щелкните Кутулс > Текст > Разделить имена. Смотрите скриншот:

2. В открывшемся диалоговом окне Split Names отметьте только Имя и нажмите Ok кнопку.

3. Затем укажите первую ячейку целевого диапазона во втором диалоговом окне «Разделить имена» и нажмите кнопку OK кнопку.

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

Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30 -день, кредитная карта не требуется! Get It Now

Источник

Как удалить символы После знака в Excel

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

Видеоинструкция

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

Для этого потребуется использовать формулу:

  • А1 — ячейка, которую мы будет проверять;
  • Символ — символ или текст, после которого будет обрезаться ячейка.

Также можно комбинировать этот способ с очисткой данных «До».

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

Выполнить эту задачу можно при помощи конструкции:

После пробела в Excel

Сделать это можно через формулу:

Подписывайтесь на наш канал в Яндекс.Дзен

Подписывайтесь на наш Telegram-канал

Подписывайтесь на наш Youtube-канал

Подписывайтесь на нашу группу ВКонтакте

Вам также будет интересно

Комментарии 2

А если после запятой надо оставить только (например) три знака в числовом формате, то надо так: =ПСТР(А3;1;ПОИСК(«,»;А3)+3)
При этом, (опять же например)
исходное значение: 23,558668; готовый результат: 23,558

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

Источник

Skip to content

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

В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части текстовой строки. Как и другие функции для работы с текстом, ПРАВСИМВ очень проста и понятна. Тем не менее, у нее есть несколько неочевидных применений, которые могут оказаться полезными в вашей работе.

  • Правила синтаксиса
  • Как вернуть текст после определенного символа
  • Извлекаем текст после последнего вхождения разделителя
  • Как удалить первые N знаков?
  • Как извлечь число при помощи ПРАВСИМВ?
  • Почему ПРАВСИМВ не работает с датами?
  • Почему не работает? Причины и решения.

Синтаксис.

ПРАВСИМВ возвращает указанное количество символов от конца текста.

Правила написания:

ПРАВСИМВ(текст; [число_знаков])

Где:

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

Например, чтобы извлечь последние 6 символов из ячейки A2, запишите:

=ПРАВСИМВ(A2; 6)

Результат может выглядеть примерно так:

Важное замечание! ПРАВСИМВ всегда возвращает текст, даже если исходное значение является числом. Чтобы заставить формулу выводить число, используйте ее в сочетании с ЗНАЧЕН, как показано в этом примере .

В реальных таблицах ПРАВСИМВ редко используется в одиночку. В большинстве случаев вы будете использовать ее вместе с другими функциями Excel в составе более сложных формул. Об этом и поговорим далее.

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

Если вы хотите извлечь все знаки, следующие за определенным символом, используйте формулу ПОИСК или НАЙТИ, чтобы определить позицию этого символа, вычтите позицию из общей длины текста, возвращаемой функцией ДЛСТР , и отделите это количество символов от его правого края.

ПРАВСИМВ( текст; ДЛСТР( текст ) — ПОИСК( символ ; текст ))

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

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(» «;A2))

Формула даст следующий результат:

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

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«-«;A2))

Результат будет выглядеть примерно так:

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

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

Как вы можете видеть на скриншоте выше, столбец A содержит список ошибок. Ваша цель — получить описание ошибки, которое идет после последнего двоеточия. Дополнительная сложность заключается в том, что исходные значения могут содержать разное количество разделителей, например, A3 содержит 3 двоеточия, а A5 — только одно.

Ключом к поиску решения является определение позиции последнего разделителя (последнее вхождение двоеточия в этом примере). Для этого вам нужно будет выполнить несколько несложных операций:

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

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

  1. Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).

Если вы знакомы с синтаксисом функции ПОДСТАВИТЬ, вы можете помнить, что у нее есть 4-й необязательный аргумент (номер вхождения), который позволяет заменять только конкретное появление указанного символа. И поскольку мы уже вычислили количество разделителей, просто впишите рассмотренное выше выражение в четвертый аргумент функции ПОДСТАВИТЬ:

=ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))

Если вы поместите эту формулу в отдельную ячейку, она вернет:          ERROR: 432 $ Connection timed out

  1. Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:

ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

В этом примере формула возвращает 10, что является позицией $ в измененном тексте.

  1. Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:

ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

Если вы работаете с большим набором данных, где разные ячейки могут содержать различные разделители, вы можете заключить приведенную выше формулу в функцию ЕСЛИОШИБКА, чтобы предотвратить возможные сообщения об ошибках:

=ЕСЛИОШИБКА(ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))))); A2)

Как показано на скриншоте ниже, формула работает отлично:

Замечание. В случае, если ячейка не содержит ни одного вхождения указанного разделителя, будет возвращена исходная строка целиком.

Как удалить первые N символов из ячейки

Помимо извлечения отрезка из конца строки, ПРАВСИМВ пригодится в ситуациях, когда вы хотите удалить определенное количество символов из её начала.

В наборе данных, использованном в предыдущем примере, вы можете удалить слово «ERROR», которое появляется в начале, и оставить только номер ошибки и описание. Для этого вычтите количество удаляемых символов из общей длины текста и передайте это число в  аргумент количество_знаков:

ПРАВСИМВ( текст; ДЛСТР (текст) — число_символов_для_удаления )

В этом примере мы удаляем первые 6 символов (5 букв и двоеточие) из содержимого A2, поэтому наша формула выглядит следующим образом:

=ПРАВСИМВ(A2; ДЛСТР(A2)-6)

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

Как упоминалось в начале этого руководства, ПРАВСИМВ в Excel всегда возвращает текст, даже если исходное значение является числом. Но что, если вы работаете с числовым набором данных и хотите, чтобы результат тоже был числовым? Простой обходной путь — вложить формулу ПРАВСИМВ в функцию ЗНАЧЕН, которая специально разработана для преобразования текста, состоящего из цифр, в число.

Например, чтобы извлечь последние 6 символов (почтовый индекс) из значения A2 и преобразовать их в число, используйте эту формулу:

=ЗНАЧЕН(ПРАВСИМВ(A2; 6))

На рисунке ниже показан результат. Обратите внимание на числа с выравниванием по правому краю в столбце B, в отличие от текстовых значений, которые выровнены по левому краю в столбце A:

Почему ПРАВСИМВ не работает с датами?

Потому что она предназначена для работы с текстовыми значениями, тогда как даты на самом деле являются числами во внутренней системе Excel. Формула ПРАВСИМВ не может получить отдельную часть даты — день, месяц или год. Если вы попытаетесь это сделать, все, что вы получите, — это несколько последних цифр числа, представляющего дату.

Предположим, у вас есть дата 9 августа 2020 года в ячейке A1. Если вы попытаетесь извлечь год с помощью формулы ПРАВСИМВ(A1,4), результатом будет 4052, что является последними четырьмя цифрами числа 44052, представляющего 9 августа 2020года в системе Excel.

«Итак, как мне получить определенную часть даты?», — спросите вы меня. Используя одно из следующих выражений:

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

На скриншоте показаны результаты:

Если ваши даты записаны в виде текста, что часто бывает при экспорте данных из других программ, то ничто не мешает вам использовать ПРАВСИМВ для извлечения последних нескольких символов, которые представляют определенную часть даты:

Теперь наша попытка извлечь год из даты вполне удачна.

Почему не работает? Причины и решения.

Это может быть связано с одной из следующих причин:

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

Вот как вы можете использовать ПРАВСИМВ в Excel. 

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

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге.

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

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

  • Инструкция;
  • До запятой;
  • До пробела.

Видеоинструкция

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

Для этого потребуется использовать формулу:

=ПСТР(A1;1;ПОИСК(«символ»;A1)-1)

Пример

Удаление символов после знака в Excel

В этом случае:

  • А1 — ячейка, которую мы будет проверять;
  • Символ — символ или текст, после которого будет обрезаться ячейка.

Пример файла

Также можно комбинировать этот способ с очисткой данных «До».

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

Выполнить эту задачу можно при помощи конструкции:

=ПСТР(A1;1;ПОИСК(«,»;A1)-1)

Удаление символов после запятой в Excel

Все готово.

Пример файла

После пробела в Excel

Сделать это можно через формулу:

=ПСТР(A1;1;ПОИСК(» «;A1)-1)

Удаление символов после пробела в Excel

Все готово.

Пример файла

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

Метод B: удаление текстов до или после первого или последнего определенного символа по формуле
Метод C: удаление текстов до или после n-го символа вхождения по формуле
Метод D: удаление текста до/после определенного символа с помощью Kutools for Excel


Содержание

  1. Удаление текста до или после определенного символа с помощью функции «Найти и заменить» в Excel
  2. Удаление текста до или после первого/последнего конкретного символа по формуле
  3. Удалить текст до или после n-го символа вхождения по формуле
  4. Легко удалять текст до/после определенного символ с помощью Kutools for Excel

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

Для удаления всех текстов до или после определенного символа с помощью функции «Найти и заменить» выполните следующие действия.

1. Выберите ячейки, в которых вы хотите удалить текст до или после определенного символа, нажмите клавиши Ctrl + H , чтобы открыть Найти и заменить .

В диалоговом окне «Найти и заменить»:

1. Чтобы удалить все перед определенным символом, например запятой, введите *, в текстовое поле Найти что ;

2 . Чтобы удалить все после определенного символа, например запятой, введите , * в текстовое поле Найти что ;

Примечания:

1. Вы можете изменить запятую на любой символ по своему усмотрению.

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

2. Оставьте текстовое поле Заменить на пустым, а затем нажмите кнопку Заменить все . См. Снимок экрана:

Редактирование и просмотр с вкладками в Office

— Сделайте вашу работу намного проще

Office Tab сэкономит 50% вашего рабочего времени при просмотре и редактировании нескольких документов.
Невероятно! Работа с двумя или более документами даже приятнее, чем операция с одним документом.
Сократите тысячи операций с клавиатурой и мышью каждый день, прощайте профессиональные заболевания сейчас.
Интерфейс вкладки Office намного мощнее и эффективнее, чем у интернет-браузеров..

Подробнее >> Загрузить сейчас

->


Легко удалить все числовые, нечисловые или указанные символы из ячеек в Excel

Kutools for Excel ‘ s Утилита Удалить символ поможет вам легко удалить все числовые, нечисловые или указанные символы из выбранных ячеек в Excel.
Загрузите полную функцию 30 дней бесплатно след Kutools для Excel прямо сейчас!


Удаление текста до или после первого/последнего конкретного символа по формуле

В этом разделе будут показаны формулы удаления всего до или после первого/последнего конкретного символа из ячеек в Excel.

Чтобы удалить все до первой запятой , пожалуйста:

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

Формула: Удалить все до первой запятой

= RIGHT (B5, LEN (B5) -FIND (“,”, B5))

1. В приведенной выше формуле B5 – это ячейка, из которой вы будете удалять текст, а “,” – это символ, на основе которого вы будете удалять тексты.

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

= RIGHT (B5, LEN (B5) -FIND (“@”, SUBSTITUTE (B5, “Character”) , “@”, (LEN (B5) -LEN (ПОДСТАВИТЬ (B5, “Символ”, “”)))/LEN (“Символ”))))

Чтобы удалить все после первой запятой , пожалуйста:

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

Формула: Удалить все после первой запятой

= LEFT (B5, FIND (“,”, B5) -1)

Примечания:

1. В приведенной выше формуле B5 – это ячейка, из которой вы будете удалять текст, а “,” – это символ, на основе которого вы будете удалять тексты.

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

= LEFT (B5, FIND (“@”, SUBSTITUTE (B5, “character”, “@”, LEN (B5) -LEN (SUBSTITUTE (B5, “character”, “”)))) – 1)


Удалить текст до или после n-го символа вхождения по формуле

Приведенные ниже формулы могут помочь удалить все до или после n-го символа вхождения из ячеек в Excel..

Чтобы удалить все символы до n-го вхождения из ячеек , вам необходимо:

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

Формула: Удалить все до второй запятой вхождения

= ВПРАВО (ПОДСТАВИТЬ (B5, “,”, СИМВОЛ (9), 2), LEN (B5) – НАЙТИ (СИМВОЛ (9), ПОДСТАВИТЬ (B5, “,”, СИМВОЛ (9), 2), 1) + 1 )

1. В формулах числа B5 , “, ” и 2 означают, что все содержимое после второй запятой будет удален из ячейки B5.

2. Вы можете изменить число “, ” и 2 на любой символ и номер позиции вхождения по своему усмотрению.

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

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


Формула: Удалить все после второй запятой вхождения

= ВЛЕВО (ПОДСТАВИТЬ (B5, “,”, СИМВОЛ (9), 2), НАЙТИ (СИМВОЛ (9), ПОДСТАВИТЬ (B5, “,”, СИМВОЛ (9), 2), 1) -1)

1. В формулах числа B5 , “, ” и 2 означают, что все содержимое после второй запятой будет удалено из ячейки A7.

2. Вы можете изменить число “, ” и 2 на любой символ и номер позиции вхождения по своему усмотрению.


Легко удалять текст до/после определенного символ с помощью Kutools for Excel

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

1. Выберите ячейки, из которых вы удалите все до или после запятой, а затем нажмите Kutools > Text > Разделить ячейки . См. Снимок экрана:

2. В диалоговом окне Разделить ячейки выберите параметр Разделить на столбцы в разделе Тип и в разделе Разделить по , выберите вариант Другое и введите запятую в пустое поле, а затем нажмите кнопку ОК . См. Снимок экрана:

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

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

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


Kutools for Excel – Помогает всегда закончить работу раньше времени, у вас будет больше времени, чтобы наслаждаться жизнью

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

300 расширенных инструментов для 1500 рабочих сценариев сделают вашу работу намного проще, чем когда-либо.
Больше не нужно запоминать формулы и коды VBA, с этого момента дайте вашему мозгу отдохнуть.
Сложные и повторяющиеся операции могут быть выполнены единовременно за секунды.
Уменьшите количество операций с клавиатурой и мышью каждый день, попрощайтесь с профессиональными заболеваниями прямо сейчас.
Станьте экспертом по Excel за 3 минуты, это поможет вам быстро получить признание и повышение заработной платы.
110 000 высокоэффективных сотрудников и выбор более 300 всемирно известных компаний.
Сделайте свой выбор 39,0 долл. США стоит больше 4000,0 долл. На обучение других.
Полнофункциональная бесплатная тренировка ial 30-дневный. 60-дневная гарантия возврата денег без причины.

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

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

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии