Как в excel убрать часть символов в ячейке

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

Удаление текста справа или слеваФункции, которая отрезает лишнее количество символов в ячейке, найти не удается, но существует система из двух функций, которые можно применить. Это система из функции ЛЕВСИМВ (или ПРАВСИМВ) и функции ДЛСТР (длина строки).

Рассмотрим их применение.

    Вначале находим количество символов в тексте при помощи функции ДЛСТР. Для этого запускаем менеджер функций, выбираем ДЛСТР, указываем ячейку с текстом. Функция ДЛСТР посчитает количество символов.

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

    Полученное значение – количество оставляемых в тексте знаков, вписываем в функцию ЛЕВСИМВ или ПРАВСИМВ. Если нужно удалить знаки справа, то используем ЛЕВСИМВ, если слева, то ПРАВСИМВ. Нажимаем «Enter». Функция ЛЕВСИМВ или ПРАВСИМВ присваивает ячейке нужное нам количество символов из текста в новую ячейку, исключая ненужный нам индекс.

    Для уменьшения количества ячеек с расчетами эти функции можно записать в систему следующего вида:

    ПРАВСИМВ(…*¹;(ДЛСТР(…*¹)-6)).

    Где …*¹- адрес ячейки, из которой берем текст.

    • Формулы удаления N символов в начале и конце строк
    • Удалить символы в начале ячейки (слева): функция надстройки !SEMTools
    • Удалить символы в конце ячейки (справа): функция надстройки !SEMTools
    • Удалить слова и символы по другим условиям

    Как удалить первый/последний символ или несколько первых/последних символов в ячейке Excel? Узнайте ответ из этой статьи.

    Примечание автора: речь пойдет о ситуациях, когда количество символов определено конкретным числом — один, два, три и т.д. Тому, как удалить текст до определенного символа, посвящена отдельная статья.

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

    Чтобы удалить из ячейки N символов слева, можно взять справа количество символов, равное разнице длины строки в символах (ДЛСТР) и N:

    =ПРАВСИМВ(A1;ДЛСТР(A1)-N)
    

    А чтобы удалить из ячейки N символов справа, наоборот, извлекаем слева длину строки минус N:

    Удалить символы в начале ячейки (слева): функция надстройки !SEMTools

    Формулы выше требуют создания дополнительного столбца. Чтобы сэкономить время, если исходные данные не нужны, я разработал функции !SEMTools, удаляющие символы прямо на месте.

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

    отрезать символы слева

    «Отрезаем» несколько символов слева в ячейках столбца

    Удалить символы в конце ячейки (справа): функция надстройки !SEMTools

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

    Выделите диапазон, затем на панели !SEMTools в меню «Удалить» выберите «Символы -> обрезать -> с конца ячейки». В появившемся диалоговом окошке вбейте количество символов, которое хотите удалить, и нажмите «ОК».

    отрезать символы справа

    «Отрезаем» символы справа в ячейках столбца

    Удалить слова и символы по другим условиям

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

    Вас наверняка могут заинтересовать похожие операции, смотрите подробнее:

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

    Хотите так же быстро удалять символы в Excel без использования формул?
    В надстройке !SemTools есть этот и ещё более 500 похожих полезных инструментов по обработке текста. Сделайте апгрейд вашего Excel!

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

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

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

    На самом деле, есть несколько вариантов, как можно это сделать.

    Итак, давайте начнем!

    Содержание

    1. С помощью функции ЗАМЕНА
    2. Копируем из ячейки все, кроме первого символа
    3. С помощью функции «Текст по столбцам»
    4. С помощью автозаполнения
    5. С помощью Visual Basic

    С помощью функции ЗАМЕНА

    Самый распространенный способ — использовать функцию ЗАМЕНА. Она довольно простая и в то же время полезная.

    Для указанного выше примера формула функции принимает такой вид:

    =ЗАМЕНА(A2;1;1;"")

    Что она делает?

    Просто заменяет первый символ в строке на пустое место.

    С помощью неё можно удалить любое количество символов с начала строки, например удалить два символа можно так:

    =ЗАМЕНА(A1;1;2;"")

    Копируем из ячейки все, кроме первого символа

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

    Разница в том, что в первом случае мы удаляли первый символ из строки, а в этом случае — мы просто разделяем строку и переносим нужную её часть в другую ячейку.

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

    В этой ситуации формула принимает такой вид:

    =ПРАВСИМВ(A1;ДЛСТР(A1)-1)

    Функция ДЛСТР получает длину всей строки, а далее из длины убавляется 1 (потому что 1 символ мы хотим «пропустить») и все это отдается в обработку функции ПРАВСИМВ.

    С помощью функции «Текст по столбцам»

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

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

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

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

    • Выделите ячейки и щелкните на «Данные»;

    • Далее «Текст по столбцам»;

    • В открывшемся окошке:
    • В первом шаге используйте вторую опцию (как на картинке);

    • Во втором шаге установите стрелку на том делении, сколько символов вы хотите «отрезать»;

    • И в последнем шаге, выберите «пропустить столбец»;

    • Подтвердите.

    Таким образом, первый символ был удален.

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

    Довольно просто: вы указали функции сколько символов нужно «отрезать» от начала строки, а также вы указали пропустить столбец. Это значит что данные, после обработки, будут записаны в тот же столбик, где они изначально были.

    С помощью автозаполнения

    Эта функция — одна из самых удобных функций в Excel. Она автоматически пытается угадать значения для следующих ячеек, если вы заполнили первую (одну или две).

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

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

    Воспользуемся этой функцией

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

    • В следующем столбике, впишите значение, которое должно быть после преобразования (в нашем случае 271);

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

    • Теперь выделите обе ячейки с обработанными данными;

    • Наведите курсор на правую нижнюю часть выделения и потяните её вниз;

    • Готово!

    Просто не правда ли?

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

    С помощью Visual Basic

    Ну и как обычно, напоследок, рассмотрим как можно сделать это с помощью Visual Basic.

    Я дам вам код функции для такого рода задачи, вы сможете модифицировать его.

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

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

    Этот код удаляет первый символ из каждой ячейки:

    For Each cell In Selection: cell.Value = Right(cell.Value, Len(cell.Value) - 1): Next cell

    Как его использовать?

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

    • Выделите диапазон ячеек, в которых нужно удалить первый символ
    • Откройте просмотр кода (правой кнопкой на имя листа -> «Просмотр кода»);

    • Далее щелкните на «View» -> «Immediate Window» (или CTRL + G);

    • Поместите в окно наш код;

    • Обязательно наведите мышь в конец кода;

    • И просто подтвердите (нажав ENTER);

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

    Что же делает этот код?

    For Each cell In Selection: cell.Value = Right(cell.Value, Len(cell.Value) - 1): Next cell  

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

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

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

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

    С помощью каких формул это можно сделать?

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

    Чтобы получить содержимое ячейки, содержащей текст ячейки с удаленным первым или последним символом используют функцию выделения подстроки:ПСТР(текст;начальный символ;количество символов)

    для определения количества символов используют функцию длины строки ДЛСТР(текст)

    если текст «абвгдежзиклмн» находится в ячейке A1 то формулы будут такими:

    • строка с удаленным первым символом ячейки =ПСТР(A1;2;ДЛСТР(A1)-1) (результат бвгдежзиклмн)
    • строка с удаленным последним символом ячейки =ПСТР(A1;1;ДЛСТР(A1)-1) (результат абвгдежзиклм)
    • строка с удаленными первым и последним символами ячейки =ПСТР(A1;2;ДЛСТР(A1)-2) (результат бвгдежзиклм)
    • часть строки в 5 символов , начиная с 3-го символа =ПСТР(A1;3;5) (результат вгдеж)

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

    например: вырезаем 3 символа, начиная с символа 3 и 4 символа, начиная с символа 7:

    =ПСТР(A1;3;3)&ПСТР(A1;7;4) (результат вгджзик)

    если нужно в результат включить строку, то она тоже добавляется символом &

    =ПСТР(A1;3;3)&». «&ПСТР(A1;7;4) (результат вгд. жзик)

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

    Рассмотрим различные ситуации.

    Удаление первого символа в ячейке

    Для этого будем использовать формулу, состоящую из двух функций:

    ПРАВСИМВ — возвращает заданное число символов справа.

    ДЛСТР — длина строки.

    ПРАВСИМВ имеет 2 аргумента:

    1) Ссылка на ячейку, из которой нужно вернуть символы. Например, B3.

    2) Количество символов. В нашем случае это будет вся строка за исключением первого символа. Поэтому пишем ДЛСТР(B3)-1.

    Формула выглядит так:

    ПРАВСИМВ(Ссылка на ячейку;ДЛСТР(Ссылка на ячейку)-1).

    Удаление последнего символа в ячейке

    Если в Excel нужно удалить не первый, а последний символ в ячейке, то нужно использовать функцию ЛЕВСИМВ.

    Эта функция работает также, как и ПРАВСИМВ — только возвращает не правые символы, а левые.

    убрать последний символ в excel

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

    ЛЕВСИМВ(Ссылка на ячейку;ДЛСТР(Ссылка на ячейку)-1).

    Удаление первого и последнего символа в ячейке

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

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

    Также существует функция ПСТР, возвращающая заданное число символов в ячейке. Аргументы:

    1) Ссылка на ячейку.

    2) Начальная позиция. В нашем случае она равна 2, так как первый символ нас не интересует.

    3) Количество знаков, которые нужно извлечь. Пишем ДЛСТР(B3)-2, так как нужно вернуть все символы из ячейки, кроме первого и последнего.

    удалить символы в строке excel

    Формула будет такой:

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

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

    В этом случае можно использовать всё те же функции, только в аргументах ЛЕВСИМВ и ПРАВСИМВ пишем не ДЛСТР(B3)-1, а ДЛСТР(B3)-n.

    n — число символов, которые нужно удалить.

    1) ПРАВСИМВ(B3;ДЛСТР(B3)-3). Удаляем 3 первых символа.

    2) ЛЕВСИМВ(B3;ДЛСТР(B3)-5). Удаляем 5 символов с конца.

    Удаление символов в середине ячейки

    Для этого в Excel существует функция ЗАМЕНИТЬ. Она имеет 4 аргумента:

    1) Ссылка на ячейку.

    2) Начальная позиция. Например, если нам нужно удалять данные с 3 символа, то пишем «3».

    3) Число знаков. Сюда пишем число удаляемых символов. Например, «3».

    4) Новый текст. Так как нам нужно именно убрать данные символы, то пишем «» (две кавычки без пробела).

    Таким образом, формула будет выглядеть так:

    Она удаляет с 3 по 5 символ в ячейке.

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

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

    Требуется убрать «12» со всех ячеек.

    1) Набираем комбинацию клавиш Ctrl + F, чтобы появилось окно «Найти и заменить».

    2) Переходим на вкладку «Заменить».

    В поле «Найти» пишем текст, который нам не нужен в ячейках. То есть 12.

    А в поле «Заменить» ничего не пишем.

    3) Нажимаем на кнопку «Заменить всё» — текст в ячейках станет такой, который был нам нужен.

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

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

    ЛЕВСИМВ и ПРАВСИМВ — возвращает заданное число символов слева и справа, соответственно.

    ДЛСТР — длина строки, функция будет выполнять вспомогательную роль.

    ПСТР — формирует подстроку из исходной строки текста на указанную длину и с определённой позиции.

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

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

    Будем использовать такую формулу:

    Так как серия паспорта записана слева, то нужна функция ЛЕВСИМВ.

    ДЛСТР(B2)-НАЙТИ(«номер»;B2) — здесь мы нашли с какой позиции начинаются ненужные нам символы и отняли эту цифру из длины строки.

    А 1 вычитается из-за того, что перед словом «номер» стоит пробел. В принципе, можно было не вычитать 1, а просто написать в формуле пробел перед номером: ДЛСТР(B2)-НАЙТИ(» номер»;B2).

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

    Только при вставке не забываем выбрать «Вставить только значения».

    А ячейки с уже неработающими формулами, разумеется, можно очистить.

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

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

    Пусть у нас будет вот такая таблица:

    Мы видим, что во втором столбце у нас уже выполнено задание — удален первый символ. Формула использована вот такая: ПРАВСИМВ(B3;ДЛСТР(B3­ )-1). То есть что мы с вами делаем: мы длину строки делаем меньше на один символ, при этом количество символов оставшееся программа считает справа, то есть лишним у нас оказывается левый, то есть первый символ, он и удаляется программой.

    Несложно догадаться, что для удаления последнего символа нужно использовать немного другую формулу: ЛЕВСИМВ(B3;ДЛСТР(B3)-1) (применительно к этой же таблице. Для удаления первого и последнего символа

    Таким же образом можно удалить несколько, а не один символ, справа или слева, просто пишем в формуле не (B3)-1, а, например, (B3)-3, и тогда удалится 3 символа справа или слева в соответствии с полной формулой.

    Чтобы удалить символы в середине ячейки, используем другую формулу, применительно все к той же таблице, если мы хотим удалить три центральных символа, эта формула будет выглядеть так: ЗАМЕНИТЬ(B3;3;3;»»), где В3, это ячейка с первоначальным текстом с полным набором символов, первая 3 — первый символ, который надо удалить, вторая 3 — количество символов, которые надо удалить, затем идут кавычки, так как это формула замены, то в них можно было бы указать символы, которые мы хотим поставить вместо удаленных, но мы хотим просто удалить три символа, поэтому в кавычках у нас ничего нет. Вот что получилось в итоге:

    Как обрезать символы в Excel

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

    Как обрезать символы при помощи формул?

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

    Ввести в ячейку стандартную текстовую функцию Excel «ЛЕВСИМВ», которая возвращает заданное количество знаков с начала строки.

    Как удалить заданное количество знаков в начале строки, остальные оставить?

    Ввести в ячейку комбинацию стандартных функций Excel «ПРАВСИМВ» и «ДЛСТР», которая определяет длину строки, то есть количество символов в значении указанной ячейки.

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

    Ввести в ячейку стандартную текстовую функцию Excel «ПРАВСИМВ», которая возвращает заданное количество знаков с конца строки.

    Как удалить заданное количество знаков в конце строки, остальные оставить?

    Ввести в ячейку комбинацию стандартных функций Excel «ЛЕВСИМВ» и «ДЛСТР»

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

    Как обрезать символы без ввода формул?

    Надстройка для быстрой обрезки текста

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

    1. обрезать заданное количество символов слева;

    2. обрезать заданное количество символов справа;

    3. обрезать значения ячеек до первого попавшегося заданного символа (сочетания символов);

    4. обрезать значения ячеек до последнего попавшегося символа (сочетания символов).

    kak obrezat tekst v excel

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

    — выделение диапазона ячеек.

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

    Разбиение текста по столбцам

    Для обрезания значений ячеек можно использовать «Текст по столбцам». Это стандартное средство Excel не удаляет и не обрезает символы, а распределяет содержимое ячеек по разным столбцам при помощи мастера текстов. Кнопка вызова диалогового окна находится на вкладке «Данные» в группе кнопок «Работа с данными». Этот инструмент можно использовать в двух режимах работы, разделять исходные данные при помощи разделителей либо при помощи настраиваемых полей, когда можно вручную указать границы раздела значений.

    Шаг1. Выбор формата исходных данных.

    Master tekstov shag1

    Шаг2. Установка нужной ширины полей.

    Master tekstov shag2

    Количество полей при этом не ограничено.

    Шаг 3. Просмотр и получение результатов.

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

    Как убрать часть текста из ячейки?

    Подскажите, пожалуйста, как в ячейке убрать эту часть:

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

    user avatar

    вводится в окне поиска/замены.

    user avatar

    Для переноса текста в другую строку (в одной ячейке) существует специальный символ переноса строки — СИМВОЛ(10) . Инструмент НАЙТИ/ЗАМЕНИТЬ видит вместо символа переноса строка СИМВОЛ(32) — пробел. Естественно, фрагмента с пробелам он не находит.

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

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

    Еще в один столбец внести формулу и протянуть ее на нужное количество строк.

    В столбце А тексты, в столбце В (или только в ячейке B1) — удаляемый фрагмент.

    Содержание:

    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 убрать цифры сверху
  • Как в excel убрать цифры после запятой при округлении
  • Как в excel убрать цифры перед текстом
  • Как в excel убрать цвет заливки
  • Как в excel убрать функцию с ячеек