Как из ячейки извлечь часть текста excel
В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое.
Среди множества различных функций, которые Microsoft Excel предоставляет для работы с текстовыми данными, ЛЕВСИМВ - одна из наиболее широко применяемых. Как следует из названия, она позволяет извлекать определенное количество знаков, начиная с левой стороны текста. Однако она способна на гораздо большее, чем такая простая операция. В этом руководстве вы найдете несколько базовых формул для понимания синтаксиса, а затем я покажу вам несколько способов, с помощью которых вы можете использовать ЛЕВСИМВ далеко за пределами ее базового применения.
Cинтаксис.
Функция ЛЕВСИМВ в Excel возвращает указанное количество символов (подстроку) от начала содержимого ячейки.
ЛЕВСИМВ (текст; [колич_знаков])
- Текст (обязательно) - это текст, из которого вы хотите извлечь подстроку. Обычно предоставляется как ссылка на ячейку, в которой он записан.
- Второй аргумент (необязательно) - количество знаков для извлечения, начиная слева.
- Если параметр опущен, то по умолчанию подразумевается 1, то есть возвращается 1 знак.
- Если введенное значение больше общей длины ячейки, формула вернет всё ее содержимое.
Например, чтобы извлечь первые 6 символов из A2, запишите такое выражение:
На следующем скриншоте показан результат:
Важное замечание! ЛЕВСИМВ относится к категории текстовых функций, поэтому результатом её всегда является текстовая строка, даже если исходное значение, из которого вы извлекаете цифры, является числом. Если вы работаете с числовым набором данных и хотите, чтобы было извлечено именно число, применяйте ее вместе с функцией ЗНАЧЕН, как показано в одном из примеров ниже.
Что еще можно делать, помимо извлечения текста слева? В следующих примерах показано, как можно применять её в сочетании с другими функциями Excel для решения более сложных задач.
Как извлечь подстроку перед определенным символом.
В некоторых случаях может потребоваться извлечь часть текста, который предшествует определенному знаку. Например, вы можете извлечь имена из столбца ФИО или получить коды стран из колонки с телефонными номерами. Проблема в том, что каждое имя и каждый код содержат разное количество символов, и поэтому вы не можете просто указать точное число сколько знаков отделить, как мы сделали в приведенном выше примере.
Если имя и фамилия разделены пробелом, проблема сводится к определению положения этого разделителя. Это можно легко сделать с помощью функции ПОИСК или НАЙТИ .
Предположим, что полное имя находится в ячейке A2, позиция пробела возвращается по этой простой формуле: ПОИСК(" "; A2)). А теперь вы вставляете это выражение в ЛЕВСИМВ:
Чтобы еще немного улучшить результат, избавьтесь от конечного пробела, вычтя 1 из результата поиска. Ведь невидимые конечные пробелы могут вызвать множество проблем, особенно если вы планируете использовать извлеченные имена в других вычислениях:
Таким же образом вы можете извлечь коды стран из столбца телефонных номеров. Единственное отличие состоит в том, что вам теперь нужно узнать позицию первого дефиса ("-"), а не пробела:
Думаю, вы поняли, что можете брать эту универсальную формулу, чтобы получить подстроку, которая предшествует любому другому знаку:
Как удалить последние N символов.
Вы уже знаете, отрезать кусочек от начала текстовой строки. Но иногда вы можете захотеть сделать что-то другое — удалить определенное количество символов из конца строки и перенести оставшееся в другую ячейку. Для этого можно также применять функцию ЛЕВСИМВ в сочетании с ДЛСТР , например:
ЛЕВСИМВ ( текст ; ДЛСТР( текст ) - число_символов_для_удаления )
Это работает с такой логикой: ДЛСТР получает общее количество символов в ячейке, затем вы вычитаете количество ненужных знаков из общей длины, а ЛЕВСИМВ возвращает оставшееся.
Например, чтобы удалить последние 7 знаков из текста в A2, запишите такое выражение:
Как показано на скриншоте, формула успешно отсекает слово «продукты» (8 букв, разделитель и 2 пробела) из текстовых значений в столбце A.
При этом взять на вооружение способ, рассмотренный нами в предыдущем примере, будет очень сложно, так как все разделители разные.
Как заставить ЛЕВСИМВ возвращать число.
Как вы уже знаете, ЛЕВСИМВ в Эксель всегда возвращает текст, даже если вы извлекаете несколько первых цифр из ячейки. Для вас это означает, что вы не сможете использовать эти результаты в вычислениях или в других функциях Excel, которые работают с числами.
Итак, как заставить ЛЕВСИМВ выводить числовое значение, а не текстовую строку, состоящую из цифр? Просто заключив его в функцию ЗНАЧЕН (VALUE), которая предназначена для преобразования текста, состоящего из цифр, в число.
Например, чтобы извлечь символы перед разделителем “-” из A2 и преобразовать результат в число, можно сделать так:
Результат будет выглядеть примерно так:
Как вы можете видеть на скриншоте выше, числа в столбце B, полученные с помощью преобразования, автоматически выровнены по правому краю в ячейках, в отличие от текста с выравниванием по левому краю в столбце A. Поскольку Эксель распознает итоговые данные как числа, вы можете суммировать и усреднять эти значения, находить минимальное и максимальное значение и выполнять любые другие вычисления с ними.
Это лишь некоторые из множества возможных вариантов использования ЛЕВСИМВ в Excel.
Дополнительные примеры формул ЛЕВСИМВ можно найти на следующих ресурсах:
Не работает ЛЕВСИМВ — причины и решения
Если ЛЕВСИМВ не работает на ваших листах должным образом, это, скорее всего, связано с одной из причин, которые мы перечислим ниже.
1. Аргумент «количество знаков» меньше нуля
Чтобы лучше проиллюстрировать эту мысль, возьмем формулу, которую мы записали в первом примере для извлечения телефонных кодов страны:
ЛЕВСИМВ(A2; ПОИСК("-"; A2)-1)
2. Начальные пробелы в исходном тексте
Если вы скопировали свои данные из Интернета или экспортировали из другого внешнего источника, довольно часто такие неприятные сюрпризы попадаются в самом начале текста. И вы вряд ли заметите, что они там есть, пока что-то не пойдет не так. Следующее изображение иллюстрирует проблему:
Чтобы избавиться от ведущих пробелов на листах, воспользуйтесь СЖПРОБЕЛЫ (TRIM).
3. ЛЕВСИМВ не работает с датами.
Если вы попытаетесь использовать ЛЕВСИМВ для получения отдельной части даты (например, дня, месяца или года), в большинстве случаев вы получите только первые несколько цифр числа, представляющего эту дату. Дело в том, что в Microsoft Excel все даты хранятся как числа, представляющие количество дней с 1 января 1900 года. То, что вы видите в ячейке, это просто визуальное представление даты. Ее отображение можно легко изменить, применив другой формат.
Например, если у вас есть дата 15 июля 2020 года в ячейке A1 и вы пытаетесь извлечь день с помощью выражения ЛЕВСИМВ(A1;2). Результатом будет 44, то есть первые 2 цифры числа 44027, которое представляет 15 июля 2020г. во внутренней системе Эксель.
Чтобы извлечь определенную часть даты, возьмите одну из следующих функций: ДЕНЬ(), МЕСЯЦ() или ГОД().
Если же ваши даты вводятся в виде текстовых строк, то ЛЕВСИМВ будет работать без проблем, как показано в правой части скриншота:
Вот как можно использовать функцию ЛЕВСИМВ в Excel.
Все описанные выше операции, а также многие другие действия с текстовыми значениями в Excel вы можете выполнить при помощи специального инструмента работы с текстом, включённого в надстройку Ultimate Suite. Вот только некоторые из этих возможностей: удалить лишние пробелы и ненужные символы, изменить регистр текста, подсчитать буквы и слова, добавить один и тот же текст в начало или конец всех ячеек в диапазоне, преобразовать текст в числа, разделить по ячейкам, извлечь отдельные слова, найти дубликаты слов.
Как быстро посчитать количество слов в Excel - В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel - В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как удалить пробелы в ячейках Excel - Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры - Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии) не работает и как…
Функция ПРАВСИМВ в Excel — примеры и советы. - В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части…
Как извлечь текст из ячейки при помощи функции ПСТР и специальных инструментов - ПСТР - одна из текстовых функций, которые Microsoft Excel предоставляет для управления текстовыми строками. На самом базовом уровне она используется для извлечения подстроки из середины текста. В этом руководстве мы обсудим…
5 примеров с функцией ДЛСТР в Excel. - Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel - В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…
Как в Excel разделить текст из одной ячейки в несколько - В руководстве объясняется, как разделить ячейки в Excel с помощью формул и стандартных инструментов. Вы узнаете, как разделить текст запятой, пробелом или любым другим разделителем, а также как разбить строки на…
Как преобразовать текст в число в Excel — 10 способов. - В этом руководстве показано множество различных способов преобразования текста в число в Excel: опция проверки ошибок в числах, формулы, математические операции, специальная вставка и многое другое. Иногда значения в ваших…
В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части текстовой строки. Как и другие функции для работы с текстом, ПРАВСИМВ очень проста и понятна. Тем не менее, у нее есть несколько неочевидных применений, которые могут оказаться полезными в вашей работе.
Синтаксис.
ПРАВСИМВ возвращает указанное количество символов от конца текста.
ПРАВСИМВ(текст; [число_знаков])
Например, чтобы извлечь последние 6 символов из ячейки A2, запишите:
Результат может выглядеть примерно так:
Важное замечание! ПРАВСИМВ всегда возвращает текст, даже если исходное значение является числом. Чтобы заставить формулу выводить число, используйте ее в сочетании с ЗНАЧЕН, как показано в этом примере .
В реальных таблицах ПРАВСИМВ редко используется в одиночку. В большинстве случаев вы будете использовать ее вместе с другими функциями Excel в составе более сложных формул. Об этом и поговорим далее.
Как получить подстроку после определенного символа.
Если вы хотите извлечь все знаки, следующие за определенным символом, используйте формулу ПОИСК или НАЙТИ, чтобы определить позицию этого символа, вычтите позицию из общей длины текста, возвращаемой функцией ДЛСТР , и отделите это количество символов от его правого края.
ПРАВСИМВ( текст; ДЛСТР( текст ) - ПОИСК( символ ; текст ))
Скажем, ячейка A2 содержит имя и фамилию, разделенные пробелом, и вы хотите перенести фамилию в другую ячейку. Просто используйте приведенную выше общую формулу:
Формула даст следующий результат:
Аналогичным образом вы можете получить подстроку, которая следует за любым другим символом, например за запятой, точкой с запятой, дефисом и т. д. Например, чтобы извлечь то, что записано после дефиса, используйте выражение:
Результат будет выглядеть примерно так:
Как извлечь подстроку после последнего вхождения разделителя
При работе со сложными текстовыми выражениями, которые содержат несколько вхождений одного и того же разделителя, вам часто может потребоваться получить текст справа от последнего появления разделителя. Чтобы упростить понимание, взгляните на следующие исходные данные и желаемый результат:
рис4Как вы можете видеть на скриншоте выше, столбец A содержит список ошибок. Ваша цель - получить описание ошибки, которое идет после последнего двоеточия. Дополнительная сложность заключается в том, что исходные значения могут содержать разное количество разделителей, например, A3 содержит 3 двоеточия, а A5 - только одно.
Ключом к поиску решения является определение позиции последнего разделителя (последнее вхождение двоеточия в этом примере). Для этого вам нужно будет выполнить несколько несложных операций:
- Подсчитайте количество разделителей в исходной строке. Это несложно:
- Вычисляете общую ее длину с помощью ДЛСТР(A2).
- Определяем длину без разделителей, используя формулу ПОДСТАВИТЬ, которая заменяет все вхождения двоеточия ничем: ДЛСТР(ПОДСТАВИТЬ(A2; ":"; ""))
- Наконец, вы вычитаете длину исходной строки без разделителей из общей длины: ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;":";""))
Чтобы убедиться, что формула работает правильно, вы можете ввести ее в отдельную ячейку, и результатом будет 2, то есть количество двоеточий в ячейке A2.
- Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).
Если вы знакомы с синтаксисом функции ПОДСТАВИТЬ, вы можете помнить, что у нее есть 4-й необязательный аргумент (номер вхождения), который позволяет заменять только конкретное появление указанного символа. И поскольку мы уже вычислили количество разделителей, просто впишите рассмотренное выше выражение в четвертый аргумент функции ПОДСТАВИТЬ:
Если вы поместите эту формулу в отдельную ячейку, она вернет: ERROR: 432 $ Connection timed out
- Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:
В этом примере формула возвращает 10, что является позицией $ в измененном тексте.
- Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:
=ЕСЛИОШИБКА(ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК("$"; ПОДСТАВИТЬ(A2;":";"$";ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;":";""))))); A2)
Как показано на скриншоте ниже, формула работает отлично:
Замечание. В случае, если ячейка не содержит ни одного вхождения указанного разделителя, будет возвращена исходная строка целиком.
Как удалить первые N символов из ячейки
Помимо извлечения отрезка из конца строки, ПРАВСИМВ пригодится в ситуациях, когда вы хотите удалить определенное количество символов из её начала.
В наборе данных, использованном в предыдущем примере, вы можете удалить слово «ERROR», которое появляется в начале, и оставить только номер ошибки и описание. Для этого вычтите количество удаляемых символов из общей длины текста и передайте это число в аргумент количество_знаков:
ПРАВСИМВ( текст; ДЛСТР (текст) - число_символов_для_удаления )
В этом примере мы удаляем первые 6 символов (5 букв и двоеточие) из содержимого A2, поэтому наша формула выглядит следующим образом:
Может ли функция Excel ПРАВСИМВ вернуть число?
Как упоминалось в начале этого руководства, ПРАВСИМВ в Excel всегда возвращает текст, даже если исходное значение является числом. Но что, если вы работаете с числовым набором данных и хотите, чтобы результат тоже был числовым? Простой обходной путь - вложить формулу ПРАВСИМВ в функцию ЗНАЧЕН, которая специально разработана для преобразования текста, состоящего из цифр, в число.
Например, чтобы извлечь последние 6 символов (почтовый индекс) из значения A2 и преобразовать их в число, используйте эту формулу:
На рисунке ниже показан результат. Обратите внимание на числа с выравниванием по правому краю в столбце B, в отличие от текстовых значений, которые выровнены по левому краю в столбце A:
Почему ПРАВСИМВ не работает с датами?
Потому что она предназначена для работы с текстовыми значениями, тогда как даты на самом деле являются числами во внутренней системе Excel. Формула ПРАВСИМВ не может получить отдельную часть даты — день, месяц или год. Если вы попытаетесь это сделать, все, что вы получите, - это несколько последних цифр числа, представляющего дату.
Предположим, у вас есть дата 9 августа 2020 года в ячейке A1. Если вы попытаетесь извлечь год с помощью формулы ПРАВСИМВ(A1,4), результатом будет 4052, что является последними четырьмя цифрами числа 44052, представляющего 9 августа 2020года в системе Excel.
«Итак, как мне получить определенную часть даты?», - спросите вы меня. Используя одно из следующих выражений:
- Функция ДЕНЬ для извлечения дня: = ДЕНЬ(A1)
- Функция МЕСЯЦ, чтобы получить месяц: = МЕСЯЦ(A1)
- ГОД, чтобы вытащить год: = ГОД(A1)
На скриншоте показаны результаты:
Если ваши даты записаны в виде текста, что часто бывает при экспорте данных из других программ, то ничто не мешает вам использовать ПРАВСИМВ для извлечения последних нескольких символов, которые представляют определенную часть даты:
Теперь наша попытка извлечь год из даты вполне удачна.
Почему не работает? Причины и решения.
Это может быть связано с одной из следующих причин:
Вот как вы можете использовать ПРАВСИМВ в Excel.
Все описанные выше манипуляции с текстовыми значениями вы можете выполнить без формул при помощи специального инструмента работы с текстом, который является частью надстройки Ultimate Suite. Вы сможете без проблем избавиться от лишних пробелов и ненужных символов, поменять регистр букв, подсчитать символы и слова в ячейке или в диапазоне, добавить один и тот же текст в начало или конец всех ячеек в диапазоне, преобразовать текст в числа, разделить его по отдельным ячейкам, извлечь отдельные слова, найти и удалить дубли слов.
Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге.
Как быстро посчитать количество слов в Excel - В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel - В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как удалить пробелы в ячейках Excel - Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры - Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии) не работает и как…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. - В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
Как извлечь текст из ячейки при помощи функции ПСТР и специальных инструментов - ПСТР - одна из текстовых функций, которые Microsoft Excel предоставляет для управления текстовыми строками. На самом базовом уровне она используется для извлечения подстроки из середины текста. В этом руководстве мы обсудим…
5 примеров с функцией ДЛСТР в Excel. - Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel - В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…
Как в Excel разделить текст из одной ячейки в несколько - В руководстве объясняется, как разделить ячейки в Excel с помощью формул и стандартных инструментов. Вы узнаете, как разделить текст запятой, пробелом или любым другим разделителем, а также как разбить строки на…
Как преобразовать текст в число в Excel — 10 способов. - В этом руководстве показано множество различных способов преобразования текста в число в Excel: опция проверки ошибок в числах, формулы, математические операции, специальная вставка и многое другое. Иногда значения в ваших…
В этом руководстве показаны методы извлечения подстроки из левой, средней или правой части ячейки, а также объясняется, как извлекать текст до или после определенного символа, как показано на скриншотах ниже.
Извлечь подстроку слева, посередине или справа
Метод A: извлечь подстроку слева, посередине или справа с помощью формулы
В Excel есть несколько формул, которые помогут вам быстро извлечь часть текста.
Извлечь первые n символов
Предположим, вы хотите извлечь первые 3 символа из данных данного списка, выберите пустую ячейку, в которую вы хотите поместить извлеченный результат, затем используйте эту формулу
B3 - это ячейка, из которой вы извлекаете символы, 3 - это количество символов, которые вы хотите извлечь.
Нажмите Enter ключ, чтобы получить извлеченный результат. Затем перетащите маркер заливки над ячейками, чтобы применить эту формулу.
Извлечь последние n символов
Например, извлеките последние 6 символов из списка строк, выберите пустую ячейку, в которую вы хотите поместить извлеченный результат, и используйте эту формулу:
B9 - это ячейка, из которой вы извлекаете символы, 6 - это количество символов, которые вы хотите извлечь.
Нажмите Enter ключ, чтобы получить извлеченный результат. Затем перетащите маркер заливки над ячейками, чтобы применить эту формулу.
Извлечь n символов из середины
Если вы хотите извлечь 3 символа, начинающиеся с 4-го символа строки, вы можете использовать следующую формулу:
B15 - это ячейка, из которой вы извлекаете символы, 4 представляет собой извлекаемые символы из 4-го символа (счетчик слева), 3 - это количество символов, которые вы хотите извлечь.
Нажмите Enter ключ, чтобы получить извлеченный результат. Затем перетащите маркер заливки над ячейками, чтобы применить эту формулу.
Примечание:
Если вы хотите переместить извлеченные результаты в другое место, сначала скопируйте и вставьте извлеченные результаты как значение.
Метод B: извлечь подстроку слева, посередине или справа с помощью Kutools for Excel
1. Выберите ячейки, из которых нужно извлечь подстроки, щелкните Кутулс > Текст > Извлечь текст.
2. Во всплывающем Извлечь текст диалог под Извлечь по местоположению tab, первые три параметра помогут вам извлечь подстроку слева, посередине или справа.
Первый символ N: извлечь подстроку слева. Например, извлеките первые 2 символа, установите этот флажок и введите 2 в текстовое поле.
Последний символ N: извлечь подстроку справа от строки. Например, извлеките последние 2 символа, установите этот флажок и введите 2 в текстовое поле.
Начальные и конечные символы: извлечь определенное количество символов из середины строки. Например, извлеките с 4-го символа по 9-й, отметьте эту опцию и введите 4 и 9 в текстовые поля отдельно.
Вставить как формулу: установите этот флажок, результатом будет формула, которую можно изменить при изменении исходной строки, в противном случае результат будет фиксированным.
3. Указав нужное местоположение, нажмите Ok, появится диалоговое окно для выбора ячейки для размещения извлеченной подстроки. Щелкните ОК.
Extract text string before, after or between characters without formula
Извлечь подстроку после или до указанного символа
Если вы хотите извлечь подстроку после или до указанного символа, вы можете применить один из следующих методов для обработки задания.
Метод A: извлечь подстроку после или до определенного символа с помощью формулы
Предположим, вы хотите извлечь символы после символа « - »Из списка строк, используйте эту формулу:
B3 - это ячейка, из которой вы хотите извлечь символы, - - это символ, после которого нужно извлечь строку.
Нажмите Enter ключ, чтобы получить извлеченный результат. Затем перетащите маркер заливки над ячейками, чтобы применить эту формулу.
Если вы хотите извлечь подстроку перед определенным символом, вы можете использовать следующую формулу:
Пример результата показан ниже:
Внимание
Данные могут быть потеряны или изменены при копировании и вставке результатов формулы в другое место. Чтобы предотвратить возникновение этой проблемы, вы можете скопировать и вставить результаты формулы как значение после применения формулы. Или вы можете попробовать Способ B.
Метод B: извлечь подстроку после или до определенного символа Kutools for Excel
Для прямого извлечения подстроки после или до указанного символа вы можете использовать Извлечь текст полезности Kutools for Excel, который может помочь вам извлечь все символы после или до символа, а также может извлечь определенную длину символов до или после символа.
1. Выберите ячейки, в которые нужно извлечь символы, нажмите Кутулс > Текст > Извлечь текст.
2. Во всплывающем Извлечь текст диалога под Извлечь по местоположению перейдите к параметрам перед текстом и после текста, чтобы указать нужную настройку.
Перед текстом: извлекать подстроки перед введенными символами. Например, введите - в текстовое поле, все символы перед - будут извлечены.
После текста: извлечь подстроки после введенного символа (ов). Например, введите - в текстовое поле, все символы после - будут извлечены.
Вставить как формулу: установите этот флажок, результатом будет формула, которую можно изменить при изменении исходной строки, в противном случае результат будет фиксированным.
3. Нажмите Ok, появится диалоговое окно для выбора ячейки для размещения извлеченной подстроки. Нажмите OK.
Теперь строка до или после определенного символа (ов) была извлечена.
13 текстовых инструментов, которые вы должны иметь в Excel, которые повысят вашу эффективность на 90%
▲ Пакетное редактирование текстовой строки в ячейках, например добавление одного и того же текста в ячейки сразу, удаление символов в любой позиции и так далее.
▲ Кроме инструментов, отображаемых на картинке, в Kutools for Excel есть еще 300 расширенных инструментов, которые могут решить ваши 82% головоломки Excel.
▲ Станьте экспертом по Excel за 5 минут, получите признание и продвижение по службе.
▲ 110000+ высокоэффективных сотрудников и 300+ всемирно известных компаний.
30-дневная бесплатная пробная версия, кредитная карта не требуется Читать далее Загрузить сейчас
Извлечь подстроку между двумя символами
Возможно, в некоторых случаях вам нужно извлечь подстроку между двумя символами, вы можете выбрать один из следующих методов для обработки задания.
Метод А: извлечение по формуле
Предполагая, что из заданного списка извлекаются символы между скобками (), вы можете использовать следующую формулу:
В формуле B3 - это ячейка, из которой вы хотите извлечь строку, ( и ) - это два символа, между которыми вы хотите извлечь строку.
Нажмите Enter ключ, чтобы получить извлеченный результат. Затем перетащите маркер заливки над ячейками, чтобы применить эту формулу.
Внимание
Если формула для вас немного сложна, вы можете попробовать метод B, который использует удобный инструмент для быстрого решения этой проблемы.
Метод B: извлечение с помощью Kutools for Excel
In Kutools for Excelсотни функций, есть функция - Извлечь строки между указанным текстом может быстро извлекать подстроки между двумя символами.
1. Выберите ячейку, которая использовалась для размещения извлеченной подстроки, щелкните Кутулс > Формула Помощник > Текст > Извлечь строки между указанным текстом.
2. в Помощник по формулам диалога, перейдите к Ввод аргументов раздел, затем выберите или напрямую введите ссылку на ячейку и два символа, которые вы хотите извлечь между ними.
По умолчанию, когда вы выбираете ссылку на ячейку, которая использовалась для извлечения подстроки, ссылка на ячейку будет абсолютной, что не может использовать дескриптор автозаполнения для заполнения формулы, пожалуйста, измените его на относительный.
3. Нажмите Ok, теперь первый результат получен, затем перетащите дескриптор автозаполнения на ячейки, которым нужна эта формула.
Наконечник:
Если вы хотите извлечь строки между двумя символами (включая два символа), Извлечь текст полезности Kutools for Excel также может оказать вам услугу в этой операции.
1. Выберите ячейки, в которые нужно извлечь подстроку между символами, нажмите Кутулс > Текст > Извлечь текст.
2. во всплывающем Извлечь текст диалога под Извлечь по правилу вкладка, перейдите в Текст раздел, введите символы, между которыми вы хотите извлечь строку, и строка может быть заменена подстановочным знаком * . Если вы хотите извлечь строку фиксированной длины, подстановочный знак ? можно использовать, один? указать один символ.
Затем нажмите Добавить добавить правило к Описание правила .
3.Click Ok, появится диалоговое окно для выбора ячейки для размещения извлеченной подстроки. Нажмите OK.
Теперь строка между двумя определенными символами была извлечена.
Извлечь адрес электронной почты из строки
Если вы хотите извлечь адрес электронной почты из заданной строки или диапазона ячеек, вы можете использовать Извлечь адрес электронной почты функция для одновременной обработки этой работы, а не для поиска их по очереди.
1. Выберите ячейки, в которых будет извлечен адрес электронной почты, затем нажмите Кутулс > Текст > Извлечь адрес электронной почты.
2. Затем появится диалоговое окно, в котором вы можете выбрать ячейку для вывода адресов электронной почты.
3. Нажмите OK, адреса электронной почты в каждой ячейке были извлечены.
Извлекать числовые или буквенные символы из строки
Если есть список данных, смешанных с числовыми, алфавитными и специальными символами, вы просто хотите извлечь числа или буквенные значения, вы можете попробовать Kutools for Excel's Удалить символы.
1. Перед использованием утилиты удаления символов вам необходимо иметь копию данных, как показано на скриншоте ниже:
2. Затем выберите эту копию данных, нажмите Кутулс > Текст > Удалить символы.
3. в Удалить символы диалог, проверьте Нечисловой , нажмите Ok.
Теперь остались только числовые символы.
Чтобы извлечь только алфавитные значения, установите флажок Не альфа вариант в Удалить символы Диалог.
Другие операции (статьи), связанные с преобразованием файлов
Извлечь время из строки даты и времени
Предоставляет трюки для извлечения времени (чч: мм: сс) или часов / минут / секунд только из строки даты и времени (мм / дд / гггг чч: мм: сс)Извлечь строки, соответствующие критериям
В этой статье он может помочь вам быстро извлечь эти строки, соответствующие критериям, в другое место в Excel, за исключением поиска и копирования их по одной.Извлечь n-й символ из строки
Здесь будут представлены методы извлечения n-го символа из строки, например, извлечение 3-го символа из строки a1b2c3, результат - b.Извлечь подстроку между двумя символами
Показать методы извлечения подстроки между двумя одинаковыми или разными символами.Быстро извлекать определенный текст из ячеек в Excel
Kutools for Excel
По умолчанию Excel предоставляет определенные функции для извлечения текста. Например, мы можем применить функцию LEFT или RIGHT для извлечения текста слева или справа от строки или применить функцию MID для извлечения текста, начиная с указанной позиции, и так далее. Для многих пользователей Excel запоминание и применение формул - головная боль в повседневной работе. Здесь настоятельно рекомендуется Извлечь текст полезности Kutools for Excel, эта мощная функция объединяет различные способы массового извлечения текста из выбранных ячеек. Простые настройки позволяют извлекать нужный текст из ячеек.
Нажмите Kutools> Текст> Извлечь текст. См. Скриншоты:
Извлечь первые или последние n символов из ячеек
В этом разделе рассказывается об извлечении первых или последних n символов из ячеек. Пожалуйста, сделайте следующее.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговом окне настройте следующим образом.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, из которого будет извлекаться текст;
(1) Первый символ N: Для извлечения количества символов слева от строки. Предположим, вам нужно извлечь первые 2 символа из выбранных ячеек, выберите этот вариант и введите число 2 в текстовое поле;
(2) Последний символ N: Для извлечения количества символов справа от строки. Если вы хотите извлечь последние 3 символа из выбранных ячеек, выберите эту опцию, а затем введите число 3 в текстовое поле.
Примечание: Проверить Вставить как формулу поле в нижнем левом углу диалогового окна вставит результат в виде формулы в ячейки результатов. Когда значение указанной ячейки изменяется, результат обновляется автоматически.
3. В дебюте Извлечь текст диалоговом окне выберите пустую ячейку для вывода результата, а затем щелкните OK.
Теперь извлекаются первые N символов или последние N символов выбранных ячеек, как показано на скриншоте ниже.
Извлечь текст по позиции из ячеек
Предположим, вы хотите извлечь 4 символа, начиная с 4-го символа в ячейках, как показано на скриншоте ниже, сделайте следующее, чтобы получить его.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговое окно, выполните следующие настройки.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, из которого будет извлекаться текст;
2.3). Доступные опции раздел: выберите Начальные и конечные символы опция, укажите начальную и конечную позиции;
В этом случае я хочу извлечь 4 символа, начиная с 4-го символа, из выбранных ячеек, поэтому я ввожу числа 4 и 7 отдельно в два текстовых поля.
Примечание: Проверить Вставить как формулу поле в нижнем левом углу диалогового окна вставит результат в виде формулы в ячейки результатов. Когда значение указанной ячейки изменяется, результат обновляется автоматически.
3. Затем Извлечь текст появится диалоговое окно, выберите пустую ячейку для вывода результата, а затем щелкните значок OK кнопку.
Затем символы, начинающиеся с указанной позиции и заканчивающиеся указанной позицией, будут извлечены в целевые ячейки сразу.
Извлечь текст до или после определенной строки / символа из ячеек
Извлечь текст Функция также может помочь легко извлечь текст до или после определенной строки или символа из ячеек, например, извлечь текст до или после символа дефиса (-), как показано на скриншоте ниже.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговое окно, выполните следующие настройки.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, из которого будет извлекаться текст;
(1) Перед текстом: Для извлечения текста перед строкой или символом. Выберите этот параметр, а затем введите строку или символ, чтобы извлечь весь текст перед ним (здесь я ввожу символ дефиса);
(2) После текста: Для извлечения текста после строки или символа. Выберите этот параметр, а затем введите строку или символ, чтобы извлечь весь текст после него (здесь я ввожу символ дефиса).
Ноты:
1) Вставить как формулу: Установите этот флажок в нижнем левом углу диалогового окна, чтобы вставить результат в виде формулы в ячейки результатов. Когда значение указанной ячейки изменяется, результат обновляется автоматически.
2) Если введенная строка или символ имеет дубликаты в той же ячейке, функция извлекает текст только до или после первого вхождения.
3. в Извлечь текст диалоговом окне выберите пустую ячейку для вывода извлеченного текста, а затем щелкните ОК.
Затем результаты отображаются, как показано на скриншоте ниже.
Извлечь все числа из текстовой строки в ячейках
В Excel нет встроенной функции для извлечения чисел из текстовой строки в Excel, единственный способ - применить комбинацию нескольких функций, чтобы получить ее. Но с Kutools извлечение чисел из текстовой строки может быть легко обработано.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговое окно, выполните следующие настройки.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, из которого будет извлекаться текст;
Примечание: Проверить Вставить как формулу поле в нижнем левом углу диалогового окна вставит результат в виде формулы в ячейки результатов. Когда значение указанной ячейки изменяется, результат обновляется автоматически.
3. в Извлечь текст диалоговом окне выберите пустую ячейку для вывода извлеченного текста, а затем щелкните ОК.
Затем извлекаются числа из любой позиции в текстовой строке. Смотрите скриншот:
Извлечь определенный текст по правилам
Помимо указанных выше фиксированных параметров, функция извлечения текста позволяет создавать правила с подстановочными знаками для извлечения необходимого текста в соответствии с вашими потребностями. Например, вы можете создать правило (*) для извлечения текста между круглыми скобками и создать правило @ * для извлечения доменов из адресов электронной почты. Пожалуйста, сделайте следующее, чтобы применить правила для извлечения текста.
Пример 1. Извлечение текста между двумя символами из ячеек
В этом разделе показано, как создать правило для массового извлечения текста между двумя символами из выбранных ячеек.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговое окно, выполните следующие настройки.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, из которого будет извлекаться текст;
Ноты:
? (вопросительный знак): обозначает любой отдельный символ. Например, КТ? Находит "КТЭ","KTO","KTW" и так далее;
* (звездочка): обозначает любое количество символов. Например, * восток находит «Северо-восток», «Юго-восток» и так далее.
2. Если в диалоговом окне «Извлечь текст» было создано несколько правил, вы можете отметить только те правила, которые вам нужно применить, и не устанавливать флажки для других.
3. в Извлечь текст В диалоговом окне выберите пустую ячейку для вывода результата, а затем нажмите кнопку ОК.
Затем текст в круглых скобках (включая скобки) извлекается из выбранных ячеек сразу. Смотрите скриншот:
Пример 2: Извлечь домен из адреса электронной почты в ячейки
В этом разделе показано, как создать правило для извлечения домена из адреса электронной почты в ячейках.
1. Нажмите Кутулс > Текст > Извлечь текст для включения функции.
2. в Извлечь текст диалоговое окно, выполните следующие настройки.
2.2). Диапазон , нажмите кнопка для выбора диапазона ячеек, содержащих адрес электронной почты;
Ноты:
? (вопросительный знак): обозначает любой отдельный символ. Например, КТ? Находит «KTE», «KTO», «KTW» и т. Д .;
* (звездочка): обозначает любое количество символов. Например, * восток находит «Северо-восток», «Юго-восток» и так далее.
2. Если в диалоговом окне «Извлечь текст» было создано несколько правил, вы можете отметить только те правила, которые вам нужно применить, и не устанавливать флажки для других.
3. Затем Извлечь текст появится диалоговое окно, выберите пустую ячейку для размещения результата и нажмите ОК.
Все почтовые домены массово извлекаются из выбранных адресов электронной почты.
Рекомендуемые инструменты для повышения производительности
Следующие ниже инструменты могут значительно сэкономить ваше время и деньги. Какой из них вам подходит?
Office Tab : Использование удобных вкладок в вашем офисе , как и в случае Chrome, Firefox и New Internet Explorer.
Kutools for Excel : Более 300 дополнительных функций для Excel 2021, 2019, 2016, 2013, 2010, 2007 и Office 365.Kutools for Excel
Описанная выше функциональность - лишь одна из 300 мощных функций Kutools for Excel.
Предназначен для Excel(Office) 2021, 2019, 2016, 2013, 2010, 2007 и Office 365. Бесплатно скачать и использовать в течение 60 дней.
Простая, на первый взгляд, задача с не очевидным решением: извлечь из строки текста последнее слово. Ну или, в общем случае, последний фрагмент, отделенный заданным символом-разделителем (пробелом, запятой и т.д.) Другими словами, необходимо реализовать реверсивный поиск (от конца к началу) в строке заданного символа и извлечь потом все символы справа от него.
Давайте рассмотрим традиционно несколько способов решения на выбор: формулами, макросами и через Power Query.
Способ 1. Формулы
Чтобы проще было понять суть и механику формулы, начнем немного издалека. Сначала увеличим количество пробелов между словами в нашем исходном тексте до, например 20 штук. Сделать это можно при помощи функции замены ПОДСТАВИТЬ (SUBSTITUTE) и функции повтора заданного символа N-раз - ПОВТОР (REPT) :
Теперь отрежем от конца получившегося текста 20 символов с помощью функции ПРАВСИМВ (RIGHT) :
Уже теплее, да? Осталось убрать лишние пробелы с помощью функции СЖПРОБЕЛЫ (TRIM) и задача будет решена:
В английской версии наша формула будет выглядеть, соответственно:
=TRIM(RIGHT(SUBSTITUTE(A1;" ";REPT(" ";20));20))
Надеюсь, понятно, что в принципе не обязательно вставлять именно 20 пробелов - подойдет любое количество, лишь бы оно было больше, чем длина самого длинного слова в исходном тексте.
Способ 2. Макрофункция
Задачу извлечения последнего слова или фрагмента из текста также можно решить с помощью макросов, а именно - написать функцию реверсивного поиска в Visual Basic, которая будет делать то, что нам нужно - искать заданную подстроку в строке в обратном направлении - от конца к началу.
Нажмите сочетание клавиш Alt + F11 или кнопку Visual Basic на вкладке Разработчик (Developer) , чтобы открыть редактор макросов. Затем добавьте новый модуль через меню Insert - Module и скопируйте туда следующий код:
Теперь можно сохранить книгу (в формате с поддержкой макросов!) и воспользоваться созданной функцией в следующем синтаксисе:
=LastWord(txt ; delim ; n)
- txt - ячейка с исходным текстом
- delim - символ-разделитель (по умолчанию - пробел)
- n - какое по счету слово с конца необходимо извлечь (по умолчанию - первое с конца)
При любых изменениях в исходном тексте в будущем наша макрофункция будет "на лету" пересчитываться, как и любая стандартная функция листа Excel.
Способ 3. Power Query
Power Query - это бесплатная надстройка от Microsoft для импорта данных в Excel из практически любых источников и последующей трансформации загруженных данных в любой вид. Мощь и крутизна этой надстройки настолько велики, что Microsoft встроила все ее возможности в Excel 2016 по умолчанию. Для Excel 2010-2013 Power Query можно бесплатно скачать отсюда.
Наша задача по отделению последнего слова или фрагмента через заданный разделитель с помощью Power Query решается очень легко.
Сначала превратим нашу таблицу с данными в умную с помощью сочтания клавиш Ctrl + T или команды Главная - Форматировать как таблицу (Home - Format as Table) :
Затем загрузим созданную "умную таблицу" в Power Query с помощью команды Из таблицы / диапазона (From table/range) на вкладке Данные (если у вас Excel 2016) или на вкладке Power Query (если у вас Excel 2010-2013):
В открывшемся окне редактора запросов на вкладке Преобразование (Transform) выберем команду Разделить столбец - По разделителю (Split Column - By delimiter) и затем останется задать символ-разделитель и выбрать опцию Самый правый разделитель, чтобы разрубить не все слова, а только последнее:
После нажатия на ОК последнее слово будет отделено в новый столбец. Ненужный первый столбец можно удалить, щелкнув по его заголовку правой кнопкой мыши и выбрав Удалить (Delete ) . Также можно переименовать оставшийся столбец в шапке таблицы.
Результаты можно выгрузить обратно на лист, используя команду Главная - Закрыть и загрузить - Закрыть и загрузить в . (Home - Close & Load - Close & Load to. ) :
И в итоге получаем:
Вот так - дешево и сердито, без формул и макросов, почти не касаясь клавиатуры :)
Если в будущем исходный список изменится, то достаточно будет правой кнопкой мыши или сочетанием клавиш Ctrl + Alt + F5 обновить наш запрос.
Читайте также: