Как в excel удалить некоторые значения ячейки

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

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

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

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

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

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

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

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

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

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

    Чтобы было понятно о чем пойдет речь, вспомним, что ячейка — это часть табличного пространства, образованная пересечением строки и столбца. Ячейка может содержать какие-то значения, например числа, текст, формулы и так далее, а также может содержать информацию о шрифтах, их цветах и размерах, заливках, рамках, защите и так далее. Таким образом, удалять можно как сами ячейки со всем их содержимым (при этом место удаленной ячейки занимает новая, а всё табличное пространство смещается либо вверх, либо влево) так и часть информации, например только значения или только форматы. В этой публикации речь пойдет об удалении значений, когда сами ячейки остаются на своих местах и информация об их форматах остается неизменной.

    Стандартные средства для удаления значений ячеек

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

    Для того чтобы очистить место в таблице для внесения новых значений можно выделять поочередно нужные диапазоны ячеек и нажимать кнопку «Delete» на клавиатуре, как говорится, медленно, но верно. Проделав такую операцию полтора десятка раз невольно появляется вопрос «а можно ли как-нибудь быстрее?». Конечно можно! Даже нужно. В Microsoft Excel 2007 и выше для этих целей подойдет такой инструмент как «Выделение группы ячеек». Для этого выбираем на ленте Excel вкладку «Главная», переходим в группу «Редактирование», нажимаем кнопку «Найти и выделить» и выбираем команду «Выделение группы ячеек». Появляется одноименное диалоговое окно, при помощи которого можно выделить определенные ячейки таблицы и после этого удалить их значения.

    vyborochnoe-vydelenie-yacheek-excel

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

    Дополнительные инструменты для выборочного удаления значений

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

    Использование надстройки позволяет:

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

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

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

    Видео по работе с надстройкойsmotret-video

    kak udalit znacheniya yacheek v Excel

    CompleteSolutionмакрос (надстройка) для выборочного удаления значений из ячеек

    Видео по выборочному удалению значений ячеек

    Другие материалы по теме:

    • Редакция Кодкампа

    17 авг. 2022 г.
    читать 2 мин


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

    Способ 1: удалить один конкретный текст

    =SUBSTITUTE( A1 ,"text1","")
    

    Эта конкретная формула удаляет «text1» из ячейки A1 .

    Способ 2: удалить несколько определенных текстов

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE( A1 ,"text1",""),"text2",""),"text3","")
    

    Эта конкретная формула удаляет «текст1», «текст2» и «текст3» из ячейки A1 .

    В следующих примерах показано, как использовать каждый метод на практике.

    Пример 1: удалить один конкретный текст

    Предположим, у нас есть следующий столбец в Excel, в котором показаны позиции 15 разных баскетболистов:

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

    =SUBSTITUTE( A2 ,"r","")
    

    Мы можем ввести эту формулу в ячейку B2 , а затем скопировать и вставить ее в каждую оставшуюся ячейку в столбце B:

    Excel удалить определенный текст из ячейки

    Обратите внимание, что буква «r» была удалена из всех названий позиций.

    Пример 2. Удаление нескольких определенных текстов

    Предположим, у нас есть следующий столбец в Excel, который показывает имя пользователя для 10 разных людей на каком-то веб-сайте:

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

    • тире ( )
    • восклицательные знаки ( ! )
    • число 5 ( 5 )

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

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE( A2 ,"-",""),"!",""),"5","")
    

    Мы можем ввести эту формулу в ячейку B2 , а затем скопировать и вставить ее в каждую оставшуюся ячейку в столбце B:

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

    Дополнительные ресурсы

    В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:

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

    Убрать лишнее из ячейки в Microsoft Excel можно разными способами, тут все будет зависеть в первую очередь от количества самих ячеек из которых нужно удалить лишнею часть текста. Если их не много то тут все просто, выделяем ячейку, выделяем не нужную часть текста и удаляем её. А вот если ячеек скажем 50, 100 или даже 1000, редактирование каждой займет очень много времени, но есть один способ который позволит из всех ячеек сразу убрать лишний текст.

    Как убрать часть текста из нескольких ячеек

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

    Как убрать часть текста из нескольких ячеек

    Конечно если ячеек не много как в моем случае проще и быстрей будет отредактировать каждую по отдельности.

    Как Microsoft Excel убрать лишнее из нескольких ячеек

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

    Как Excel убрать лишнее из ячейк

    В итоге во всех выделенных ячейках после слова «Тел» все будет заменено.

    Microsoft Excel Как убрать часть текста из нескольких ячеек сразу

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

    На чтение 5 мин Просмотров 11.2к. Опубликовано 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 удалить лишние строки внизу таблицы
  • Как в excel удалить лист с данными
  • Как в excel удалить каждую вторую строку в excel
  • Как в excel удалить инициалы
  • Как в excel удалить имя диапазона в excel