Оглавление
При работе с большим набором данных иногда возникает необходимость удалить какую-то определенную часть данных. Делать это вручную очень трудоемко и наивно. В Excel можно удалить текст после определенного символа тремя эффективными способами.
Практика Скачать рабочую тетрадь
Рабочую тетрадь можно скачать отсюда.
Удалить текст после символа.xlsm
3 простых способа удалить текст после символа в Excel
Здесь вы узнаете, как удалить текст после определенного символа с помощью команды Find & Replace в Excel, с помощью формул, а также с помощью кода VBA.
1. Используйте команду Find & Replace для удаления текста после символа
Мы узнаем, как удалить текст после определенного символа с помощью функции Найти и заменить В Excel это самый простой способ удалить любой текст после определенного символа.
Ниже приведены шаги для этого,
Шаг 1: Сначала выберите набор данных.
Шаг 2: Затем под Главная перейдите на вкладку Найти & Выбрать -> Заменить .
Шаг 3: Из всплывающего окна Найти и заменить ящик, рядом с Найдите то, что метки, напишите символ, после которого вы хотите удалить текст, и поставьте знак Звездочка (*) символ после него.
Шаг 4: Сохраняйте Заменить на ящик пуст.
Шаг 5: Нажмите Заменить все .
Чтобы понять больше, посмотрите на следующий рисунок, где мы хотим удалить все после запятая (,) поэтому мы пишем символ запятая (,) и поставить Звездочка (*) символ вместе с ним.
Шаг 4: Он удалит весь текст после запятой (,) в вашем наборе данных.
Читать далее: Как удалить текст после символа в Excel (3 способа)
2. Вставка формулы Excel для удаления текста после символа
В отличие от описанного выше метода, использование формул для удаления строк после определенного символа в Excel является более эффективным и надежным методом. Применение формул дает более неизменный и контролируемый результат вашего набора данных.
Использование формул открывает несколько способов удаления текста после нескольких определенных точек строки.
i. Удалить весь текст после символа
Общая формула:
=LEFT(cell, SEARCH("character", cell) -1)
Вот,
ячейка = номер ссылки на ячейку ваших данных
персонаж = символ, после которого вы хотите удалить текст
Если вы хотите удалить весь текст после символа, просто выполните следующие действия,
Шаг 1: В ячейке рядом с вашим набором данных напишите приведенную выше формулу.
Шаг 2: Нажмите Войти .
Он удалит весь текст после определенного символа.
Шаг 3: Перетащите строку вниз с помощью Наполнительная рукоятка чтобы применить формулу к остальной части набора данных.
- Объяснение:
Функция ПОИСК идентифицирует позицию символа из ячейки (в нашем случае идентифицирует позицию запятой (,) в данных ячейки B4) и передает его в функция ЛЕВША который извлекает соответствующий номер символа из начала строки в ячейке.
ii. Удаление текста после N-го появления символа
В ситуации, когда необходимо удалить текст после определенного символа, но этот символ встречается в строке несколько раз, необходимо использовать следующую формулу,
Общая формула: =LEFT(
ячейка
, FIND("#", SUBSTITUTE(
ячейка
, "
персонаж
", "#",
n
)) -1)
Вот,
ячейка = номер ссылки на ячейку ваших данных
персонаж = символ, после которого вы хотите удалить текст
n = вхождение символа, после которого следует удалить текст.
# = ввести новый символ, которого нет нигде в исходном наборе данных (вы можете использовать любой символ, но имейте в виду, что этот символ должен быть уникальным).
Ниже приведены шаги по удалению текста после N-го появления символа,
Шаг 1: В ячейке рядом с вашим набором данных напишите приведенную выше формулу.
Шаг 2: Нажмите Войти .
Он удалит весь текст после определенного символа.
Шаг 3: Перетащите строку вниз с помощью Наполнительная рукоятка чтобы применить формулу к остальной части набора данных.
- Пояснения
Чтобы понять больше, посмотрите пример выше, где мы хотим удалить все, что находится после 2-ой строки запятая (,) в ячейке B4, поэтому мы ЗАМЕНИТЬ с хэш (#) символ.
SUBSTITUTE(B4, ",", "#", 2)
Затем передайте вывод в функция FIND который определяет положение хэш (#) . После определения позиции персонажа, на НАЙТИ Затем функция отнимает 1, чтобы узнать число, предшествующее символу (,).
FIND("#", SUBSTITUTE(B4, ",", "#", 2)) -1
Затем он передает значение в СЛЕВА функцию с указанием вытащить символ перед уникальным символом (#).
LEFT(B4, FIND("#", SUBSTITUTE(B4, ",", "#", 2)) -1)
Это даст вам результат усеченного набора данных без всего текста после запятой (,).
iii. Удаление текста после последнего появления символа
В случае удаления всего текста после определенного символа, который встретился несколько раз, необходимо реализовать следующую формулу,
Общая формула: =LEFT(
ячейка
, FIND("#", SUBSTITUTE(
ячейка
, "
персонаж
", "#", LEN(
ячейка
) - LEN(SUBSTITUTE(
ячейка
, "
персонаж
","")))) -1)
Вот,
ячейка = номер ссылки на ячейку ваших данных
персонаж r = символ, после которого вы хотите удалить текст.
# = ввести новый символ, которого нет нигде в исходном наборе данных (вы можете использовать любой символ, но имейте в виду, что он должен быть уникальным).
Ниже приведены шаги по удалению текста после последнего вхождения символа,
Шаг 1: В ячейке рядом с вашим набором данных напишите приведенную выше формулу.
Шаг 2: Нажмите Войти .
Он удалит весь текст после определенного символа.
Шаг 3: Перетащите строку вниз с помощью Наполнительная рукоятка чтобы применить формулу к остальной части набора данных.
- Объяснения:
Чтобы понять больше, проверьте приведенный выше пример, где мы хотим сохранить только имя крикетиста, а не его профессию.
Итак, сначала мы должны выяснить, сколько запятых в оригинальном тексте. Итак, мы заменяем каждую запятую на пустое место ("") с ЗАМЕНИТЬ функцию и передайте вывод в функция LEN :
LEN(SUBSTITUTE(B4, ",",""))
Затем вычтите полученное число из общей длины исходной строки, чтобы получить общее количество запятых (,), присутствующих в строке (которое также является порядковым номером последней запятой).
LEN(B4) - LEN(SUBSTITUTE(B4, ",",""))
Далее, вы уже знакомы с FIND(SUBSTITUTE()) формула из вышеприведенного обсуждения, которая была использована для получения позиции последней запятой (,) в строке, которую мы получили из обсуждаемой выше формулы LEN(SUBSTITUTE()) формула.
FIND("#", SUBSTITUTE(B4, ",", "#", LEN(B4) - LEN(SUBSTITUTE(B4, ",", "))))
Далее мы просто вычитаем полученный результат из длины исходных данных, чтобы удалить весь текст.
LEFT(B4, FIND("#", SUBSTITUTE(B4, ",", "#", LEN(B4) - LEN(SUBSTITUTE(B4, ",","")))) -1)
В результате будет получен набор данных с именем игрока в крикет без указания профессий.
Читать далее: Как удалить текст из ячейки Excel (9 простых способов)
Похожие чтения
- Как удалить определенный текст из ячейки в Excel (11 самых простых способов)
- Как удалить текст перед пробелом с помощью формулы Excel (5 методов)
3. Встраивание кода VBA для удаления текста после символа в Excel
Если вы опытный пользователь Excel, то этот метод только для вас. Использование VBA для удаления текста после символа - самый быстрый способ выполнить работу.
Шаг 1: Нажмите Alt + F11 на клавиатуре или перейдите на вкладку Разработчик -> Visual Basic чтобы открыть редактор Visual Basic.
Шаг 2: В строке меню нажмите Вставка -> Модуль .
Шаг 3: Скопируйте следующий код и вставьте его в окно кода.
Sub remove_text_after_character() Dim range As range Dim cell As range Set range = Application.Selection For Each cell In range cell.Offset(0, 1).Value = Left(cell, InStr(cell, ",") - 1) Next cell End Sub
Теперь ваш код готов к выполнению.
Шаг 4: S перейдите на интересующий вас рабочий лист, выберите нужный диапазон, убедитесь, что столбец рядом с ним пуст, поскольку макрос отобразит результат именно здесь.
Шаг 5: Затем перейдите к Разработчик -> Макросы.
Шаг 6: Выберите имя макроса удалить_текст_после_символа -> Бег
Он покажет результат удаления текста после символа в Excel.
Читать далее: Как удалить определенный текст из столбца в Excel (8 способов)
Заключение
В этой статье мы узнали, как удалить текст после определенного символа в Excel. Мы выяснили, как сделать это не только с первого вхождения символа, но и с последнего и N-го вхождения. Надеюсь, что эта статья была очень полезна для вас. Не стесняйтесь задавать любые вопросы по теме.