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

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

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

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

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

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

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

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

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

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

    На чтение 5 мин Просмотров 11.3к. Опубликовано 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.

    Надеюсь, эта статья оказалась полезна для вас!

    Содержание:

    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.

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

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

    Удаление текста справа или слева

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

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

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

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

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

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

    Как обрезать текст в ячейке excel

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Видео по быстрой обрезке символов в Excel

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

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

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

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

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

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

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

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

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

    если надо первое слово из текста в ячейке Ф1 можно усложнить

    =левсимв (Ф1;поиск (» «;Ф1;1)-1) – фнкция поиск укажет позицию первого пробела, а левсимв обрежет текст до него, если не ставить (-1) пробел войдет в итоговое значение

    также помогает функция «длстр» – считает общее количество символов в тексте, например если нужен текст без первого слова:

    Как в excel удалить часть текста в ячейке до определенного символа

    В этой статье представлены различные методы удаления текста до или после определенного символа или n-го символа вхождения из ячеек в Excel.

    Удаление текста до или после определенного символа с помощью функции «Найти и заменить» в Excel

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

    1. Выберите ячейки, в которых вы хотите удалить текст до или после определенного символа, нажмите Ctrl + H , чтобы открыть Найти и заменить Диалог.

    В диалоговом окне «Найти и заменить»:

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

    2. Чтобы удалить все после определенного символа, например запятой, введите ,* в Найти то, что текстовое окно;

    Ноты:

    1. Вы можете изменить запятую на любой символ по своему усмотрению.

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

    2. Держать Заменить пустое текстовое поле, а затем щелкните значок Заменить все кнопка. Смотрите скриншот:

    Office Tab will save 50% of your work time when browsing & editing multiple documents.
    Unbelievable! The operation of two or more documents is even pleasant than the single document operation.
    Reduce thousands of keyboard & mouse operations every day, farewell to occupational diseases now.
    The interface of Office Tab is far more powerful and efficient than internet browsers.

    Легко удаляйте все числовые, нечисловые или указанные символы из ячеек в Excel

    Kutools для Excel‘s Удалить персонажа Утилита поможет вам легко удалить все числовые, нечисловые или указанные символы из выбранных ячеек в Excel.
    Загрузите полнофункциональную 30-дневную бесплатную версию Kutools for Excel прямо сейчас!

    Удалять тексты до или после первого / последнего конкретного символа по формуле

    В этом разделе будут показаны формулы удаления всего до или после первого / последнего конкретного символа из ячеек в Excel.

    Чтобы удалить все до первой запятой, пожалуйста:

    Выберите пустую ячейку, скопируйте и вставьте в нее приведенную ниже формулу и нажмите Enter ключ. Затем перетащите Ручка заполнения чтобы применить формулу к другим ячейкам. Смотрите скриншот:

    Формула: Удалите все до первой запятой

    = ВПРАВО ( B5 , LEN ( B5 )-НАХОДИТЬ(» , «, B5 ))

    Ноты:

    1. В приведенной выше формуле B5 — это ячейка, из которой вы удаляете текст, а «,» — это символ, на основе которого вы удаляете тексты.

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

    = ВПРАВО ( B5 , LEN ( B5 ) -НАЙТИ («@», ПОДСТАВИТЬ ( B5 ,» Характер «,» @ «, (LEN ( B5 ) -ЛЕН (ЗАМЕНА ( B5 ,» Характер «,» «))) / LEN (» Характер «))))

    Удалить все после первой запятой, пожалуйста:

    Выберите пустую ячейку, скопируйте и вставьте в нее приведенную ниже формулу и нажмите Enter ключ. Затем перетащите Ручка заполнения чтобы применить формулу к другим ячейкам. Смотрите скриншот:

    Формула: Удалите все после первой запятой

    = ЛЕВЫЙ (B5; НАЙТИ («;»; B5) -1)

    Ноты:

    1. В приведенной выше формуле B5 — это ячейка, из которой вы удаляете текст, а «,» — это символ, на основе которого вы удаляете тексты.

    2. Чтобы удалить все после последнего конкретного символа, используйте эту формулу:

    = ВЛЕВО ( B5 , НАЙТИ («@», ПОДСТАВИТЬ ( B5 ,» персонаж «,» @ «, LEN ( B5 ) -ЛЕН (ЗАМЕНА ( B5 ,» персонаж «,» «)))) — 1)

    Удалять тексты до или после n-го символа вхождения по формуле

    Приведенные ниже формулы могут помочь удалить все до или после n-го символа вхождения из ячеек в Excel.

    Чтобы удалить все символы перед n-м вхождением из ячеек, тебе нужно:

    Выберите пустую ячейку для вывода результата, скопируйте в нее приведенную ниже формулу и нажмите Enter ключ. Затем перетащите Ручка заполнения чтобы применить формулу к другим ячейкам. Смотрите скриншот:

    Формула: Удалите все до второй запятой

    = ПРАВИЛЬНО (ЗАМЕНИТЬ ( B5 » , «, СИМВОЛ (9), 2 ), LEN ( B5 ) — НАЙТИ (СИМВОЛ (9), ЗАМЕНИТЬ ( B5 » , «, СИМВОЛ (9), 2 ), 1) + 1)

    Ноты:

    1. В формулах B5«,» а также 2 число означает, что все содержимое после второй запятой будет удалено из ячейки B5.

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

    Чтобы удалить все после n-го символа вхождения из ячеек, тебе нужно:

    Выберите пустую ячейку для вывода результата, скопируйте в нее приведенную ниже формулу и нажмите Enter ключ. Затем перетащите Ручка заполнения чтобы применить формулу к другим ячейкам. Смотрите скриншот:

    Формула: Удалить все после второй запятой

    = ЛЕВЫЙ (ПОДСТАВИТЬ ( B5 ,» , «, СИМВОЛ (9), 2 ), НАЙТИ (СИМВОЛ (9), ЗАМЕНИТЬ ( B5 ,» , «, СИМВОЛ (9), 2 ), 1) -1)

    Ноты:

    1. В формулах B5«,» а также 2 число означает, что все содержимое после второй запятой будет удалено из ячейки A7.

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

    Легко удаляйте тексты до / после определенного символа с помощью Kutools for Excel

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

    1. Выберите ячейки, из которых вы удалите все до или после запятой, а затем щелкните Кутулс > Текст > Разделить клетки. Смотрите скриншот:

    2. в Разделить клетки диалоговом окне выберите Разделить на столбцы вариант в Тип раздел, а в Разделить на раздел, выберите Другое вариант и введите запятую в пустое поле, а затем щелкните OK кнопка. Смотрите скриншот:

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

    Затем вы можете увидеть, что выбранные ячейки разделены определенным символом — запятой. Смотрите скриншот:

    Если вы хотите получить бесплатную (30-дневную) пробную версию этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.

    Как отрезать (удалить) лишний текст слева или справа в ячейке «Эксель».

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

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

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

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

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

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

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

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

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

    Excel из ячейки удалить часть текста

    Изначально в ячейке Excel идет так:

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

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

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

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

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

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

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

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

    В столбце С формула:

    Для общего фрагмента:

    Для данного случая можно взять только левую часть:

    Иногда нужно удалить текст одной строки. При этом останется пустая строка, т.к. два символа переноса расположены один за другим. Для такого случая:

    Дальнейшие действия — по необходимости.

    а) оставить как есть;

    б) выделить ячейки с формулами, копировать, выделить диапазон исходных текстов, вставить (но! Вставить_как_значения); столбцы В и С можно очистить или удалить;

    в) выделить ячейки с формулами, копировать, здесь же вставить (но! Вставить_как_значения); столбцы А и В можно очистить или удалить.

    Как извлечь часть текста в Эксель

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

    Для получения части текста, в Эксель есть 3 функции:

    1. ЛЕВСИМВ(Строка; Количество_символов) – выводит заданное количество символов с левого края. Например, =ЛЕВСИМВ(А1;10) выведет 10 первых символов строки в ячейке А1 . Функция имеет 2 обязательных аргумента – Строка-источник и количество выводимых символов;

    Функция ЛЕВСИМВ в Эксель

    1. ПРАВСИМВ(Строка; Количество_символов) – функция схожа с предыдущей, она выводит заданное количество символов справа. То есть, =ПРАВСИМВ(А1;10) в результате выдаст 10 последних символов из строки А1 .

    Функция ПРАВСИМВ в Excel

    1. ПСТР(Строка; Начальный_символ; Количество символов) – выбирает из текста нужное количество знаков, начиная с заданного. Например, =ПСТР(А1;5;3) выведет 3 символа начиная с 5-го (5-7 символы строки).

    Функция ПСТР в Эксель

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

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

    А следующий пост мы посвятим поиску нужного текста в строке. Заходите и читайте. Только хорошее владение функциями позволит вам эффективно выполнять задачи в Microsoft Excel!

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

    Как вытащить число или часть текста из текстовой строки в Excel

    Сегодня мы с вами рассмотрим весьма распространённую ситуацию, возникающую в работе экономиста связанную с анализом данных.

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

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

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

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

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

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

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

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

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

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

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

    «Количество_знаков» должно быть больше нуля или равно ему. Если «количество_знаков» превышает длину текста, функция ЛЕВСИМВ (ПРАВСИМВ) возвращает весь текст. Если значение «количество_знаков» опущено, оно считается равным 1.

    Зная количество знаков, которые содержит код, мы легко извлечем необходимые символы.

    Сложнее если нужные нам символы находятся в середине текста.

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

    =ПСТР(текст; начальная_позиция; количество_знаков)

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

    Начальная_позиция – обязательный аргумент. Позиция первого знака, извлекаемого из текста. Первый знак в тексте имеет начальную позицию 1 и так далее.

    Количество_знаков – обязательный аргумент. Указывает, сколько знаков должна вернуть функция ПСТР.

    Самый простой случай – если код находиться на одном и том же месте от начала строки. Например, у нас наименование документа начинается всегда одинаково «Поступление товаров и услуг ХХ ….»

    Наш признак «ХХ» — код филиала начинается с 29 знака и имеет 2 знака в своем составе.

    В нашем случае формула будет иметь вид:

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

    Первый символ – первая буква в наименовании филиала, второй символ – это буква Ф (филиал) и далее следует пять нулей «00000». Причем меняется только первый символ — первая буква наименования филиала.

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

    =ПОИСК(искомый_текст; текст_для_поиска; [нач_позиция])

    Искомый_текст – обязательный аргумент. Текст, который требуется найти.

    Просматриваемый_текст – обязательный аргумент. Текст, в котором нужно найти значение аргумента искомый_текст.

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

    Функция ПОИСК не учитывает регистр. Если требуется учитывать регистр, используйте функцию НАЙТИ.

    В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (

    Обозначив меняющийся первый символ знаком вопроса (?), мы можем записать итоговую формулу для выделения кода филиала в таком виде:

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

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

    Удалить из текста список слов

    Периодически возникает необходимость удалить слова из текста в ячейках. У вас есть список слов, и нужно удалить их все из списка фраз, если они в нем присутствуют. Зачастую, но не всегда такое приходит в голову после того, как удалось обнаружить слова и/или извлечь их из текста и понять, что они — лишние.

    Например, вы – контент-менеджер интернет-магазина. Ваш каталог представляет собой Excel-файл. В нем товары представляют собой массив ячеек, содержащий названия продукта и фирмы-производителя.

    У вас есть список фирм-производителей, а ваша задача – удалить их и оставить только названия продуктов.

    Или у вас каталог автомобилей в виде одной строки – марка и модель. Вы хотите разбить его на марки и модели, и все что у вас есть – список из

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

    Для таких случаев может пригодиться макрос удаления списка слов из ячеек. Макрос находится в группе «УДАЛИТЬ» в меню «Удалить слова«

    Местоположение макроса «удалить из ячеек любые слова из указанного списка»

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

    Как удалить из текста список слов с помощью !SEMTools:

    Все очень просто. Выделяем список фраз, вызываем макрос из меню, он предлагает выделить список слов, выделяем его и жмем «ОК». Вуаля!
    Важно:
    Слова удаляются в исходном диапазоне и навсегда. Рекомендуется копировать столбец, оставляя исходные данные, как показано на видеоинструкции ниже, если не уверены в результате:

    Удалить список слов из ячеек в Excel — видеоинструкция

    Удалить слова во всех словоформах

    Если стоит задача удалить слова во всех их словоформах, а перебирать их вручную не очень хочется, есть пара вариантов:
    1. Можно воспользоваться макросом удаления слов по условию «начинается с». Такой вариант менее предпочтителен, если вы не уверены, что в массиве нет других слов, начинающихся с указанной последовательности. И точно непригоден для удаления коротких слов.
    2. Можно воспользоваться модулем морфологии и быстро просклонять слова в Excel автоматически, не прикладывая лишних усилий. Но и тут есть примечение. Модуль Морфология в !SEMTools на текущий момент работает только с существительными и прилагательными.

    Понравилась статья? Поделить с друзьями:
  • Формулы excel удалить пустую строку
  • Формулы excel только один раз
  • Формулы excel таблица соответствия
  • Формулы excel суммпроизв если
  • Формулы excel суммировать если в одном столбце