Бывают ситуации, когда необходимо отрезать/ удалить строго определенное количество символов в тексте справа или слева. Например, когда вы имеете список адресов, и вначале каждого адреса стоит шестизначный индекс. Нужно убрать почтовые индексы из списка, но через замену их не уберешь, так как они имеют совершенно разные значения и не находятся опцией замены.
Функции, которая отрезает лишнее количество символов в ячейке, найти не удается, но существует система из двух функций, которые можно применить. Это система из функции ЛЕВСИМВ (или ПРАВСИМВ) и функции ДЛСТР (длина строки).
Рассмотрим их применение.
Вначале находим количество символов в тексте при помощи функции ДЛСТР. Для этого запускаем менеджер функций, выбираем ДЛСТР, указываем ячейку с текстом. Функция ДЛСТР посчитает количество символов.
Зная длину лишнего текста — 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!
В этом примере Excel функции ЛЕВСИМВ мы рассмотрим, как удалить из текстовой строки некоторые символы начиная справа.
Общая формула
=ЛЕВСИМВ(текст;ДЛСТР(текст)-n) |
Описание
Чтобы удалить последние n символов из текстовой строки, вы можете использовать формулу, основанную на функциях ЛЕВСИМВ и ДЛСТР. Вы можете использовать подобную формулу, чтобы удалить последние 3 символа, последние 5 символов начиная справа.
В показанном выше примере в ячейке C5 приведена формула:
=ЗНАЧЕН(ЛЕВСИМВ(B5;ДЛСТР(B5)-5)) |
которая отсекает «евро» от каждого значения, возвращая только число.
Пояснение
Функция ЛЕВСИМВ идеально подходит для извлечения символов, начинающихся с левой стороны текстовой строки.
Мы используем ЛЕВСИМВ в этой формуле, чтобы извлечь все символы до количества символов, которое мы хотим извлечь.
Проблема для значений переменной длины состоит в том, что мы не знаем точно, сколько символов нужно извлечь.
Вот где используется функция ДЛСТР.
ДЛСТР вычисляет общую длину строки. Для ячейки B5 (5 евро) общая длина равна 6 символов. Чтобы получить количество извлекаемых символов, мы вычитаем 5, что составляет длину » евро», включая пробел. Результатом будет 1, которые передаются в ЛЕВСИМВ как количество символов для извлечения. ЛЕВСИМВ затем возвращает текст «5» как текстовое значение.
Наконец, поскольку нам нужно числовое значение (а не текст), мы пропускаем текст через функцию ЗНАЧЕН, которая преобразует числа в текстовом формате в фактические числа.
Шаги формулы выглядят так:
=ЗНАЧЕН(ЛЕВСИМВ(B5;ДЛСТР(B5)-5)) =ЗНАЧЕН(ЛЕВСИМВ(B6;ДЛСТР(B6)-5)) =ЗНАЧЕН(ЛЕВСИМВ(B7;ДЛСТР(B7)-5)) =ЗНАЧЕН(«350») Результат: 350 |
Примечание: нет причин использовать функцию ЗНАЧЕН, если вам не нужен числовой результат.
На чтение 5 мин Просмотров 11к. Опубликовано 16.05.2022
Люди, которые только начинают работать в Excel часто встречаются с таким вопросом.
Допустим, у нас есть такая табличка:
Примерно так выглядит удаление всех символов после «,».
Это можно сделать разными способами. Мы рассмотрим несколько.
Итак, начнём!
Содержание
- С помощью функции «Найти и заменить»
- С помощью формул
- С помощью функции «Заполнить»
- С помощью 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? Как удалить первый и последний символ?
Как убирать определённые символы в ячейках?
Как удалить первый символ в ячейке?
Как удалить последний символ в ячейке?
Как удалить заданное число символов в середине строки?
С помощью каких формул это можно сделать?
Чтобы поменять содержимое ячейки нужен макрос,а формулы не меняют содержание других ячеек, формулы только извлекают и обрабатывают информацию из ячеек, входящих в параметры формул.
Чтобы получить содержимое ячейки, содержащей текст ячейки с удаленным первым или последним символом используют функцию выделения подстроки:ПСТР(текст;начальный символ;количество символов)
для определения количества символов используют функцию длины строки ДЛСТР(текст)
если текст «абвгдежзиклмн» находится в ячейке 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
Обзор способов, позволяющих быстро обрезать значения ячеек и удалить лишний текст. Обрезка текста формулами слева и справа, быстрая обрезка строк надстройкой VBA, удаление лишнего текста до определенного символа, разбиение текста по столбцам.
Как обрезать символы при помощи формул?
Как оставить заданное количество символов в начале строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ЛЕВСИМВ», которая возвращает заданное количество знаков с начала строки.
Как удалить заданное количество знаков в начале строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ПРАВСИМВ» и «ДЛСТР», которая определяет длину строки, то есть количество символов в значении указанной ячейки.
Как оставить заданное количество символов в конце строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ПРАВСИМВ», которая возвращает заданное количество знаков с конца строки.
Как удалить заданное количество знаков в конце строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ЛЕВСИМВ» и «ДЛСТР»
Как видно из приведенных примеров, оставить текстовые строки заданной длины достаточно просто при помощи формулы в одно действие. Чтобы обрезать определенное количество знаков с начала или с конца строки, необходимо вносить в ячейки достаточно громоздкие формулы, что достаточно неудобно.
Как обрезать символы без ввода формул?
Надстройка для быстрой обрезки текста
Все описанные выше манипуляции с текстовыми значениями можно производить и без использования формул, что гораздо быстрее. Для этого нужно лишь вызвать диалоговое окно надстройки и задать в нем диапазон ячеек, подходящую функцию и количество знаков, которые необходимо удалить либо оставить.
1. обрезать заданное количество символов слева;
2. обрезать заданное количество символов справа;
3. обрезать значения ячеек до первого попавшегося заданного символа (сочетания символов);
4. обрезать значения ячеек до последнего попавшегося символа (сочетания символов).
В надстройку зашиты функции, аналогичные тем, которые описаны выше, что сокращает время на:
— выделение диапазона ячеек.
В программе предусмотрена возможность вместо выделения диапазона ячеек выделять целиком строки/столбцы. Программа автоматически сокращает выделенный диапазон до границы используемого диапазона, при этом на листе не должно быть отфильтрованных строк.
Разбиение текста по столбцам
Для обрезания значений ячеек можно использовать «Текст по столбцам». Это стандартное средство Excel не удаляет и не обрезает символы, а распределяет содержимое ячеек по разным столбцам при помощи мастера текстов. Кнопка вызова диалогового окна находится на вкладке «Данные» в группе кнопок «Работа с данными». Этот инструмент можно использовать в двух режимах работы, разделять исходные данные при помощи разделителей либо при помощи настраиваемых полей, когда можно вручную указать границы раздела значений.
Шаг1. Выбор формата исходных данных.
Шаг2. Установка нужной ширины полей.
Количество полей при этом не ограничено.
Шаг 3. Просмотр и получение результатов.
В результате таких манипуляций исходные значения нарезаются в соответствии с установленными полями и разносятся по различным столбцам.
Видео по быстрой обрезке символов в Excel
Как отрезать (удалить) лишний текст слева или справа в ячейке «Эксель».
Бывают ситуации, когда необходимо отрезать/ удалить строго определенное количество символов в тексте справа или слева. Например, когда вы имеете список адресов, и вначале каждого адреса стоит шестизначный индекс. Нужно убрать почтовые индексы из списка, но через замену их не уберешь, так как они имеют совершенно разные значения и не находятся опцией замены.
Функции, которая отрезает лишнее количество символов в ячейке, найти не удается, но существует система из двух функций, которые можно применить. Это система из функции ЛЕВСИМВ (или ПРАВСИМВ) и функции ДЛСТР (длина строки).
Рассмотрим их применение.
Вначале находим количество символов в тексте при помощи функции ДЛСТР. Для этого запускаем менеджер функций, выбираем ДЛСТР, указываем ячейку с текстом. Функция ДЛСТР посчитает количество символов.
Зная длину лишнего текста — 6 знаков в индексе, вычитаем их из общего числа символов посчитанных функцией ДЛСТР и получаем то количество символов, которое должно остаться в тексте, когда удалим индекс.
Полученное значение – количество оставляемых в тексте знаков, вписываем в функцию ЛЕВСИМВ или ПРАВСИМВ. Если нужно удалить знаки справа, то используем ЛЕВСИМВ, если слева, то ПРАВСИМВ. Нажимаем «Enter». Функция ЛЕВСИМВ или ПРАВСИМВ присваивает ячейке нужное нам количество символов из текста в новую ячейку, исключая ненужный нам индекс.
Для уменьшения количества ячеек с расчетами эти функции можно записать в систему следующего вида:
ПРАВСИМВ(…*¹;(ДЛСТР(…*¹)-6)).
Где …*¹- адрес ячейки, из которой берем текст.
Как в экселе удалить символы справа?
В программе эксель иногда требуется удалить лишние символы справа в ячейке, некоторые люди делают эту операцию вручную, но когда нужно обработать большой массив данных, то данный способ трудозатратный. На самом деле, это можно сделать быстро с помощью специальной функции. Рассмотрим подробную инструкцию, как в программе эксель удалять символы справа.
Первый шаг. Перед нами таблица, в которой указаны числа, необходимо убрать из ячеек информацию о годе.
Второй шаг. Сначала посчитаем количество символов, которые нам нужно оставить, получается вместе с точкой пять. В ячейке «В2» пишем формулу: =ЛЕВСИМВ(A2;5), данная функция возвращает указанное количество символов справой стороны. Синтаксис её следующий: «A2» — текст, который мы будем уменьшать, «5» — цифра пять означает вернуть пять символов с правой стороны.
Третий шаг. Остается распространить формулу на оставшуюся часть массива. Для этого выделяем ячейку «В2», нажимаем на правую клавишу мыши, чтобы появилось окно настроек, в котором выбираем строчку «копировать».
Четвертый шаг. Выделяем ячейки с «В3» по «В7» и жмем на клавишу «Enter».
Как обрезать символы в Excel
Обзор способов, позволяющих быстро обрезать значения ячеек и удалить лишний текст. Обрезка текста формулами слева и справа, быстрая обрезка строк надстройкой VBA, удаление лишнего текста до определенного символа, разбиение текста по столбцам.
Как обрезать символы при помощи формул?
Как оставить заданное количество символов в начале строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ЛЕВСИМВ», которая возвращает заданное количество знаков с начала строки.
Как удалить заданное количество знаков в начале строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ПРАВСИМВ» и «ДЛСТР», которая определяет длину строки, то есть количество символов в значении указанной ячейки.
Как оставить заданное количество символов в конце строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ПРАВСИМВ», которая возвращает заданное количество знаков с конца строки.
Как удалить заданное количество знаков в конце строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ЛЕВСИМВ» и «ДЛСТР»
Как видно из приведенных примеров, оставить текстовые строки заданной длины достаточно просто при помощи формулы в одно действие. Чтобы обрезать определенное количество знаков с начала или с конца строки, необходимо вносить в ячейки достаточно громоздкие формулы, что достаточно неудобно.
Как обрезать символы без ввода формул?
Надстройка для быстрой обрезки текста
Все описанные выше манипуляции с текстовыми значениями можно производить и без использования формул, что гораздо быстрее. Для этого нужно лишь вызвать диалоговое окно надстройки и задать в нем диапазон ячеек, подходящую функцию и количество знаков, которые необходимо удалить либо оставить.
1. обрезать заданное количество символов слева;
2. обрезать заданное количество символов справа;
3. обрезать значения ячеек до первого попавшегося заданного символа (сочетания символов);
4. обрезать значения ячеек до последнего попавшегося символа (сочетания символов).
В надстройку зашиты функции, аналогичные тем, которые описаны выше, что сокращает время на:
— выделение диапазона ячеек.
В программе предусмотрена возможность вместо выделения диапазона ячеек выделять целиком строки/столбцы. Программа автоматически сокращает выделенный диапазон до границы используемого диапазона, при этом на листе не должно быть отфильтрованных строк.
Разбиение текста по столбцам
Для обрезания значений ячеек можно использовать «Текст по столбцам». Это стандартное средство Excel не удаляет и не обрезает символы, а распределяет содержимое ячеек по разным столбцам при помощи мастера текстов. Кнопка вызова диалогового окна находится на вкладке «Данные» в группе кнопок «Работа с данными». Этот инструмент можно использовать в двух режимах работы, разделять исходные данные при помощи разделителей либо при помощи настраиваемых полей, когда можно вручную указать границы раздела значений.
Шаг1. Выбор формата исходных данных.
Шаг2. Установка нужной ширины полей.
Количество полей при этом не ограничено.
Шаг 3. Просмотр и получение результатов.
В результате таких манипуляций исходные значения нарезаются в соответствии с установленными полями и разносятся по различным столбцам.