Как в excel убрать несколько символов в ячейке 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  

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

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

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

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

    символ в ячейке Excel

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

    Содержание

    • 1. Найти и заменить символ в ячейке Excel
    • 2. Удалить символ в ячейке Excel формулой
    • 3. =СЖПРОБЕЛЫ()
    • 4. Удалить первый символ
    • 5. Функция =ПЕЧСИМВ()
    • Похожие статьи

    1. Найти и заменить символ в ячейке Excel

    Если вкратце, то существует специальный инструмент во всех продуктах MS Office. Вызывается клавишами Ctrl+F (найти) или Ctrl+H (заменить). В первое поле можно вписать символ, который нужно удалить, во второе ничего не вписывайте.

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

    2. Удалить символ в ячейке Excel формулой

    Удалить любой символ можно прекрасной функцией =ПОДСТАВИТЬ().

    Эта функция имеет следующую конструкцию =ПОДСТАВИТЬ(текст;старый_текст;новый_текст;номер_вхождения)

    текст — здесь указывается ячейка, где записан текст для изменения

    старый_текст — что меняем

    новый_текст — на что меняем

    номер_вхождения — является необязательным. Он предписывает Excel заменить только символы, начиная с определенного номера. Интересное дополнение

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

    =ПОДСТАВИТЬ(A1;".";",")

    3. =СЖПРОБЕЛЫ()

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

    Но! Будьте внимательнее — формула удаляет стандартные пробелы. Если вы к примеру копировали текст с сайта — он может содержать символы похожие на пробелы, но функция =СЖПРОБЕЛЫ() не будет их удалять. В таком случае придется пользоваться возможностью Найти и заменить.

    Но в 95% случаев сжпробелы помогает на «отлично».

    Удаление пробелов я даже вынес в отдельную статью

    4. Удалить первый символ

    Часто необходимо удалить первый, несколько последних символов и так далее. Как это сделать быстро и не вручную? Воспользуйтесь функцией ПСТР.

    Очень подробно об этом написано здесь.

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

    Формула будет выглядеть следующим образом:

    =ПСТР(A:A;ПОИСК(".";A:A)+2;ДЛСТР(A:A)-ПОИСК(".";A:A))

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

    Пример

    5. Функция =ПЕЧСИМВ()

    Функция с одним аргументом очень похожа на СЖПРОБЕЛЫ, но она удаляет непечатные символы в строке, такие как перенос строки, знаки абзаца, какие-нибудь квадратики и т.п. (первые 32 непечатаемых знаков в 7-разрядном коде ASCII). Особенно полезна она, если нужно удалить перенос строки — мне всегда помогает.

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

    Внимание! ПЕЧСИМВ способна удалить большинство, но не все лишние символы.

    Зачистка текста

    Зачастую текст, который достается нам для работы в ячейках листа Microsoft Excel далек от совершенства. Если он был введен другими пользователями (или выгружен из какой-нибудь корпоративной БД или ERP-системы) не совсем корректно, то он легко может содержать:

    • лишние пробелы перед, после или между словами (для красоты!)
    • ненужные символы («г.» перед названием города)
    • невидимые непечатаемые символы (неразрывный пробел, оставшийся после копирования из Word или «кривой» выгрузки из 1С, переносы строк, табуляция)
    • апострофы (текстовый префикс – спецсимвол, задающий текстовый формат у ячейки)

    Давайте рассмотрим способы избавления от такого «мусора».

    Замена

    «Старый, но не устаревший» трюк. Выделяем зачищаемый диапазон ячеек и используем инструмент Заменить с вкладки Главная – Найти и выделить (Home – Find & Select – Replace) или жмем сочетание клавиш Ctrl+H.

    Изначально это окно было задумано для оптовой замены одного текста на другой по принципу «найди Маша – замени на Петя», но мы его, в данном случае, можем использовать его и для удаления лишнего текста. Например, в первую строку вводим «г.» (без кавычек!), а во вторую не вводим ничего и жмем кнопку Заменить все (Replace All). Excel удалит все символы «г.» перед названиями городов:

    clean-text1.png

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

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

    Если из текста нужно удалить вообще все пробелы (например они стоят как тысячные разделители внутри больших чисел), то можно использовать ту же замену: нажать Ctrl+H, в первую строку ввести пробел, во вторую ничего не вводить и нажать кнопку Заменить все (Replace All).

    Однако, часто возникает ситуация, когда удалить надо не все подряд пробелы, а только лишние – иначе все слова слипнутся друг с другом. В арсенале Excel есть специальная функция для этого – СЖПРОБЕЛЫ (TRIM) из категории Текстовые. Она удаляет из текста все пробелы, кроме одиночных пробелов между словами, т.е. мы получим на выходе как раз то, что нужно:

    clean-text2.png

    Удаление непечатаемых символов

    В некоторых случаях, однако, функция СЖПРОБЕЛЫ (TRIM) может не помочь. Иногда то, что выглядит как пробел – на самом деле пробелом не является, а представляет собой невидимый спецсимвол (неразрывный пробел, перенос строки, табуляцию и т.д.). У таких символов внутренний символьный код отличается от кода пробела (32), поэтому функция СЖПРОБЕЛЫ не может их «зачистить».

    Вариантов решения два:

    • Аккуратно выделить мышью эти спецсимволы в тексте, скопировать их (Ctrl+C) и вставить (Ctrl+V) в первую строку в окне замены (Ctrl+H). Затем нажать кнопку Заменить все (Replace All) для удаления.
    • Использовать функцию ПЕЧСИМВ (CLEAN). Эта функция работает аналогично функции СЖПРОБЕЛЫ, но удаляет из текста не пробелы, а непечатаемые знаки. К сожалению, она тоже способна справится не со всеми спецсимволами, но большинство из них с ее помощью можно убрать.

    Функция ПОДСТАВИТЬ

    Замену одних символов на другие можно реализовать и с помощью формул. Для этого в категории Текстовые в Excel есть функция ПОДСТАВИТЬ (SUBSTITUTE). У нее три обязательных аргумента:

    • Текст в котором производим замену
    • Старый текст – тот, который заменяем
    • Новый текст – тот, на который заменяем

    С ее помощью можно легко избавиться от ошибок (замена «а» на «о»), лишних пробелов (замена их на пустую строку «»), убрать из чисел лишние разделители (не забудьте умножить потом результат на 1, чтобы текст стал числом):

    clean-text3.png

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

    Апостроф (‘) в начале ячейки на листе Microsoft Excel – это специальный символ, официально называемый текстовым префиксом. Он нужен для того, чтобы дать понять Excel, что все последующее содержимое ячейки нужно воспринимать как текст, а не как число. По сути, он служит удобной альтернативой предварительной установке текстового формата для ячейки (Главная – Число – Текстовый) и для ввода длинных последовательностей цифр (номеров банковских счетов, кредитных карт, инвентарных номеров и т.д.) он просто незаменим. Но иногда он оказывается в ячейках против нашей воли (после выгрузок из корпоративных баз данных, например) и начинает мешать расчетам. Чтобы его удалить, придется использовать небольшой макрос. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:

    	 
    Sub Apostrophe_Remove() 
       For Each cell In Selection 
          If Not cell.HasFormula Then 
             v = cell.Value 
             cell.Clear 
             cell.Formula = v 
          End If 
        Next 
    End Sub
    

    Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то апострофы перед содержимым выделенных ячеек исчезнут.

    Английские буквы вместо русских

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

    Можно, конечно, вручную заменять символы латинцы на соответствующую им кириллицу, но гораздо быстрее будет сделать это с помощью макроса. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте новый модуль (меню Insert — Module) и введите туда его текст:

    	 
    Sub Replace_Latin_to_Russian() 
      Rus = "асекорхуАСЕНКМОРТХ" 
      Eng = "acekopxyACEHKMOPTX" 
      For Each cell In Selection 
        For i = 1 To Len(cell) 
          c1 = Mid(cell, i, 1) 
          If c1 Like "[" & Eng & "]" Then 
             c2 = Mid(Rus, InStr(1, Eng, c1), 1) 
             cell.Value = Replace(cell, c1, c2) 
          End If 
        Next i 
      Next cell 
    End Sub
    

    Теперь, если выделить на листе диапазон и запустить наш макрос (Alt+F8 или вкладка Разработчик – кнопка Макросы), то все английские буквы, найденные в выделенных ячейках, будут заменены на равноценные им русские. Только будьте осторожны, чтобы не заменить случайно нужную вам латиницу :)

    Ссылки по теме

    • Поиск символов латиницы в русском тексте
    • Проверка текста на соответствие заданному шаблону (маске)
    • Деление «слипшегося» текста из одного столбца на несколько

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