Excel символы с определенной позиции

Как быстро извлечь символы, если известна их позиция?

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

Распишу подробно, как решать такие задачи.

Итак начнём с начала

Извлечь символы по их позиции в начале ячейки

Эта тема довольно интересная и поэтому я ей посвятил отдельную статью которую можно посмотреть по ссылке: извлечь первые N символов ячейки Excel.

берем первые символы до позиции 11 в начале ячейки (номера телефонов)

Берем первые 11 символов по позиции в начале ячейки, чтобы извлечь из них номера телефонов

Извлечь символы по их позиции в конце ячейки

Этой теме я также посвятил отдельную статью, поскольку можно извлекать символы в конце не только просто по их количеству, но и по различным условиям. Смотрите подробную информацию здесь: извлечь последние N символов из ячеек Excel.

извлекаем символы по позиции в конце

Взять N символов по их позиции в середине ячейки

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

А так это можно сделать с !SEMTools, можно просто удалить первые 10 символов ячейки:

извлекаем символы с 10 символа в середине ячейки

Извлекаем из ячейки на месте символы от 10 позиции и далее

Skip to content

Функция ПРАВСИМВ в Excel — примеры и советы.

В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части текстовой строки. Как и другие функции для работы с текстом, ПРАВСИМВ очень проста и понятна. Тем не менее, у нее есть несколько неочевидных применений, которые могут оказаться полезными в вашей работе.

  • Правила синтаксиса
  • Как вернуть текст после определенного символа
  • Извлекаем текст после последнего вхождения разделителя
  • Как удалить первые N знаков?
  • Как извлечь число при помощи ПРАВСИМВ?
  • Почему ПРАВСИМВ не работает с датами?
  • Почему не работает? Причины и решения.

Синтаксис.

ПРАВСИМВ возвращает указанное количество символов от конца текста.

Правила написания:

ПРАВСИМВ(текст; [число_знаков])

Где:

  • Текст  (обязательно) — текст, из которого вы хотите извлечь символы.
  • число_знаков  (необязательно) — количество символов для извлечения, начиная с самого правого символа.
    • Если аргумент опущен, возвращается один последний символ (по умолчанию).
    • Когда число знаков для извлечения больше, чем общее количество символов в ячейке, возвращается весь текст.
    • Если введено отрицательное число, формула возвращает ошибку #ЗНАЧ!.

Например, чтобы извлечь последние 6 символов из ячейки A2, запишите:

=ПРАВСИМВ(A2; 6)

Результат может выглядеть примерно так:

Важное замечание! ПРАВСИМВ всегда возвращает текст, даже если исходное значение является числом. Чтобы заставить формулу выводить число, используйте ее в сочетании с ЗНАЧЕН, как показано в этом примере .

В реальных таблицах ПРАВСИМВ редко используется в одиночку. В большинстве случаев вы будете использовать ее вместе с другими функциями Excel в составе более сложных формул. Об этом и поговорим далее.

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

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

ПРАВСИМВ( текст; ДЛСТР( текст ) — ПОИСК( символ ; текст ))

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

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(» «;A2))

Формула даст следующий результат:

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

=ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«-«;A2))

Результат будет выглядеть примерно так:

Как извлечь подстроку после последнего вхождения разделителя

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

Как вы можете видеть на скриншоте выше, столбец A содержит список ошибок. Ваша цель — получить описание ошибки, которое идет после последнего двоеточия. Дополнительная сложность заключается в том, что исходные значения могут содержать разное количество разделителей, например, A3 содержит 3 двоеточия, а A5 — только одно.

Ключом к поиску решения является определение позиции последнего разделителя (последнее вхождение двоеточия в этом примере). Для этого вам нужно будет выполнить несколько несложных операций:

  1. Подсчитайте количество разделителей в исходной строке. Это несложно:
    • Вычисляете общую ее длину с помощью ДЛСТР(A2).
    • Определяем длину без разделителей, используя формулу ПОДСТАВИТЬ, которая заменяет все вхождения двоеточия ничем: ДЛСТР(ПОДСТАВИТЬ(A2; «:»; «»))
    • Наконец, вы вычитаете длину исходной строки без разделителей из общей длины:  ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))

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

  1. Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).

Если вы знакомы с синтаксисом функции ПОДСТАВИТЬ, вы можете помнить, что у нее есть 4-й необязательный аргумент (номер вхождения), который позволяет заменять только конкретное появление указанного символа. И поскольку мы уже вычислили количество разделителей, просто впишите рассмотренное выше выражение в четвертый аргумент функции ПОДСТАВИТЬ:

=ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))

Если вы поместите эту формулу в отдельную ячейку, она вернет:          ERROR: 432 $ Connection timed out

  1. Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:

ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

В этом примере формула возвращает 10, что является позицией $ в измененном тексте.

  1. Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:

ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»)))))

Если вы работаете с большим набором данных, где разные ячейки могут содержать различные разделители, вы можете заключить приведенную выше формулу в функцию ЕСЛИОШИБКА, чтобы предотвратить возможные сообщения об ошибках:

=ЕСЛИОШИБКА(ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(«$»; ПОДСТАВИТЬ(A2;»:»;»$»;ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))))); A2)

Как показано на скриншоте ниже, формула работает отлично:

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

Как удалить первые N символов из ячейки

Помимо извлечения отрезка из конца строки, ПРАВСИМВ пригодится в ситуациях, когда вы хотите удалить определенное количество символов из её начала.

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

ПРАВСИМВ( текст; ДЛСТР (текст) — число_символов_для_удаления )

В этом примере мы удаляем первые 6 символов (5 букв и двоеточие) из содержимого A2, поэтому наша формула выглядит следующим образом:

=ПРАВСИМВ(A2; ДЛСТР(A2)-6)

Может ли функция Excel ПРАВСИМВ вернуть число?

Как упоминалось в начале этого руководства, ПРАВСИМВ в Excel всегда возвращает текст, даже если исходное значение является числом. Но что, если вы работаете с числовым набором данных и хотите, чтобы результат тоже был числовым? Простой обходной путь — вложить формулу ПРАВСИМВ в функцию ЗНАЧЕН, которая специально разработана для преобразования текста, состоящего из цифр, в число.

Например, чтобы извлечь последние 6 символов (почтовый индекс) из значения A2 и преобразовать их в число, используйте эту формулу:

=ЗНАЧЕН(ПРАВСИМВ(A2; 6))

На рисунке ниже показан результат. Обратите внимание на числа с выравниванием по правому краю в столбце B, в отличие от текстовых значений, которые выровнены по левому краю в столбце A:

Почему ПРАВСИМВ не работает с датами?

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

Предположим, у вас есть дата 9 августа 2020 года в ячейке A1. Если вы попытаетесь извлечь год с помощью формулы ПРАВСИМВ(A1,4), результатом будет 4052, что является последними четырьмя цифрами числа 44052, представляющего 9 августа 2020года в системе Excel.

«Итак, как мне получить определенную часть даты?», — спросите вы меня. Используя одно из следующих выражений:

  • Функция ДЕНЬ для извлечения дня: = ДЕНЬ(A1)
  • Функция МЕСЯЦ, чтобы получить месяц: = МЕСЯЦ(A1)
  • ГОД, чтобы вытащить год: = ГОД(A1)

На скриншоте показаны результаты:

Если ваши даты записаны в виде текста, что часто бывает при экспорте данных из других программ, то ничто не мешает вам использовать ПРАВСИМВ для извлечения последних нескольких символов, которые представляют определенную часть даты:

Теперь наша попытка извлечь год из даты вполне удачна.

Почему не работает? Причины и решения.

Это может быть связано с одной из следующих причин:

  1. В исходных данных есть один или несколько концевых пробелов. Чтобы быстро удалить лишние пробелы в ячейках, используйте функцию СЖПРОБЕЛЫ.
  2. Аргумент число_знаков меньше нуля. Конечно, вряд ли вам захочется специально добавлять отрицательное число в формулу, но если этот аргумент вычисляется какой-то формулой Excel, и вы получаете ошибку #ЗНАЧ!, то обязательно проверьте вложенные выражения на наличие ошибок.
  3. Исходное значение — дата. Если вы внимательно следовали этому руководству, вы уже знаете, почему формула ПРАВСИМВ не может работать с датами. 

Вот как вы можете использовать ПРАВСИМВ в Excel. 

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

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге.

Как быстро посчитать количество слов в Excel В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как удалить пробелы в ячейках Excel Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии)  не работает и как…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
5 примеров с функцией ДЛСТР в Excel. Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функций ПСТР и ПСТРБ в Microsoft Excel.

Описание

Функция ПСТР возвращает заданное число знаков из текстовой строки, начиная с указанной позиции.

Функция ПСТРБ возвращает определенное число знаков из текстовой строки, начиная с указанной позиции, на основе заданного числа байтов.

Важно: 

  • Эти функции могут быть доступны не на всех языках.

  • Функция ПСТР предназначена для языков с однобайтовой кодировкой, а ПСТРБ — для языков с двухбайтовой кодировкой. Язык по умолчанию, заданный на компьютере, влияет на возвращаемое значение следующим образом.

  • Функция ПСТР всегда считает каждый символ (одно- или двухбайтовый) за один вне зависимости от языка по умолчанию.

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

К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.

Синтаксис

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

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

Аргументы функций ПСТР и ПСТРБ описаны ниже.

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

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

    • Если start_num больше, чем длина текста, то для ПМС и ПБ возвращается «» (пустой текст).

    • Если start_num меньше, чем длина текста, но start_num плюс num_chars превышает длину текста, то mid/MIDB возвращает символы до конца текста.

    • Если start_num меньше 1, то mid/MIDB возвращает #VALUE! значение ошибки #ЗНАЧ!.

  • Число_знаков    Требуется для mid. Указывает, сколько знаков должна вернуть функция ПСТР.

    • Если значение «число_знаков» отрицательно, функция ПСТР возвращает значение ошибки #ЗНАЧ!.

  • Число_байтов    Требуется для midB. Указывает, сколько знаков должна вернуть функция ПСТРБ (в пересчете на байты).

    • Если значение «число_байтов» отрицательно, функция ПСТРБ возвращает значение ошибки #ЗНАЧ!.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

Поток воды

Формула

Описание

Результат

=ПСТР(A2;1;5)

Возвращает пять знаков из строки в ячейке А2, начиная с первого знака.

Поток

=ПСТР(A2;7;20)

Возвращает двадцать знаков из строки в ячейке А2, начиная с седьмого знака. Так как количество возвращаемых знаков (20) больше длины строки (10), возвращаются все знаки, начиная с седьмого. Пустые символы (пробелы) не добавляются в конец строки.

воды

=ПСТР(A2;20;5)

Так как начальная позиция больше, чем длина строки (10), возвращается пустая строка.

Нужна дополнительная помощь?


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

Предположим, в ячейке

А5

имеется текстовая строка:

МАМА МЫЛа РАМУ

(см.

файл примера

).

Формула:

=НАЙТИ(СИМВОЛ(1);ПОДСТАВИТЬ(A5;»А»;СИМВОЛ(1);3))

найдет позицию

третьего

вхождения символа «А»

с учетом регистра

(9).

Рассмотрим подробнее. Функция

ПОДСТАВИТЬ()

заменяет третье вхождение символа «А» на символ с кодом ASCII =1 (заведомо нет в текстовой строке). Затем функция

НАЙТИ()

находит его и выводит его позицию. Если третьего вхождения не обнаружено, то будет выдана ошибка.

Формула без учета регистра:

=НАЙТИ(СИМВОЛ(1);ПОДСТАВИТЬ(СТРОЧН(A5);»а»;СИМВОЛ(1);3))

О подсчете вхождений символов можно прочитать

здесь

.

Формула:

=НАЙТИ(СИМВОЛ(1);ПОДСТАВИТЬ(A5;»МА»;СИМВОЛ(1);2))

найдет позицию

второго

вхождения подстроки «МА» с учетом регистра (3).

О подсчете вхождений последовательности символов можно прочитать

здесь

.

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

Содержание: [ Скрывать ]

(Щелкните любой заголовок в оглавлении ниже или справа, чтобы перейти к соответствующей главе.)


Извлечь текст по позиции

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

1. Извлеките количество символов слева или справа

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

1.1 Извлеките первые или последние N символов с помощью формул

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

Извлечь первые N символов из текстовой строки

Функция ВЛЕВО может помочь легко извлечь первые N символов из текстовой строки в Excel.

Общая формула

=LEFT(text_string,[num_chars])

аргументы

Текстовая_строка: Текстовая строка, содержащая символы, которые вы хотите извлечь. Это может быть ссылка на ячейку или фактическая текстовая строка, заключенная в двойные кавычки;

Num_chars: указывает количество символов, которые вы хотите извлечь.

Num_chars должно быть больше или равно нулю;

Если указанное значение Num_chars больше длины текстовой строки, возвращается весь текст;

Если значение Num_chars опущено, предполагается, что оно равно 1.

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

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

=LEFT(B5,2)

Теперь первые 2 символа в каждой ячейке диапазона B5:B10 извлечены.

Извлечь последние N символов из текстовой строки

Здесь мы применяем функцию ПРАВИЛЬНО для извлечения последних N символов из текстовой строки в Excel.

Общая формула

=RIGHT(text_string,[num_chars])

аргументы

Текстовая_строка: Текстовая строка, содержащая символы, которые вы хотите извлечь. Это может быть ссылка на ячейку или фактическая текстовая строка, заключенная в двойные кавычки;

Num_chars: указывает количество символов, которые вы хотите извлечь.

Наблюдения и советы этой статьи мы подготовили на основании опыта команды Num_chars должен быть больше или равен нулю;

Если указанный Num_chars больше длины текстовой строки, возвращает весь текст;

Если Num_chars опущено, предполагается, что оно равно 1.

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

=RIGHT(B5,2)

1.2 Извлеките первые или последние N символов с помощью замечательного инструмента

Хотя приведенные выше формулы просты, для извлечения первых или последних n символов из длинного списка текстовой строки вам все равно нужно перетаскивать дескриптор автозаполнения сверху вниз, что может занять немного времени. Здесь рекомендует Kutools for ExcelАвтора Извлечь текст утилита, помогающая извлечь первые или последние N символов из списка текстовых строк оптом.

1. Заранее выберите список текстовых строк, из которого вы хотите извлечь текст, и щелкните Кутулс > Текст > Извлечь текст.

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

2.1) Убедитесь, что вы остаетесь в Извлечь по местоположению вкладка;

2.2). Диапазон поле, внутри отображается выбранный диапазон, вы можете изменить его на другой диапазон в соответствии с вашими потребностями;

2.3). Опции раздел:

Если вы хотите извлечь первые N символов, выберите Первый символ N переключатель, а затем укажите количество символов, которые вы хотите извлечь в текстовом поле. В этом случае я ввожу цифру 2;

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

2.4) Нажмите OK. Смотрите скриншот:

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

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

Затем из выбранных ячеек массово извлекаются указанные первые или последние N символов.

Нажмите, чтобы узнать больше об этой функции.

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


2. Извлечь текст до или после определенного символа/слова

Чтобы извлечь текст до или после определенного символа или слова, различные сценарии в этом разделе удовлетворят ваши потребности.

2.1 Извлечь текст до или после первого разделителя (символа)

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

2.1.1 Извлечь текст перед первым разделителем с формулой

Применение формулы, основанной на функциях ЛЕВЫЙ и НАЙТИ, может помочь извлечь текст перед первым разделителем из ячейки. Вы можете выполнить следующие шаги, чтобы сделать это.

Общая формула

=LEFT(text_string,FIND(«delimiter»,text_string,1)-1)

аргументы

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

Разделитель: первый разделитель, определяющий, какой текст будет извлечен из ячейки.

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

=LEFT(B5,FIND(«-«,B5,1)-1)

2.1.2 Извлечь текст после первого разделителя с формулой

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

Общая формула

=MID(text_string,FIND(«delimiter»,text_string)+1,LEN(text_string))

аргументы

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

Разделитель: Первый разделитель, определяющий, какой текст будет извлечен из ячейки.

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

=MID(B5,FIND(«-«,B5)+1,LEN(B5))

2.1.3 Извлекайте текст до или после первого разделителя с помощью замечательного инструмента

Здесь настоятельно рекомендуется Извлечь текст полезности Kutools for Excel. С помощью этой функции вы можете легко извлекать тексты до или после первого разделителя из диапазона ячеек.

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

2. в Извлечь текст диалоговое окно необходимо настроить следующим образом.

2.1) Оставайтесь в Извлечь по местоположению вкладка;

2.2). Диапазон окошко, внутри отображается выбранный диапазон, вы можете изменить его как вам нужно;

2.3). Опции раздел:

Чтобы извлечь текст перед первым разделителем, выберите перед текстом переключатель, а затем введите первый разделитель в текстовое поле;

Чтобы извлечь текст после первого разделителя, выберите после текста переключатель, а затем введите первый разделитель в текстовое поле.

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

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

Затем тексты до или после первого разделителя сразу извлекаются из выделенных ячеек.

Чтобы узнать больше об этой функции, посетите: Быстрое извлечение определенного текста из ячеек в Excel.

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

2.2 Извлечение текста до или после последнего разделителя (символа)

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

2.2.1 Извлечь текст перед последним разделителем с помощью формулы

Чтобы извлечь текст перед последним разделителем из ячейки, вы можете использовать функции ПОИСК, ДЛСТР и ПОДСТАВИТЬ внутри функции ЛЕВЫЙ.

Общая формула

=LEFT(text_string,SEARCH(«#»,SUBSTITUTE(text_string,»delimiter»,»#»,LEN(text_string)-LEN(SUBSTITUTE(text_string,»delimiter»,»»))))-1)

аргументы

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

Разделитель: Последний разделитель, определяющий, какой текст будет извлекаться из ячейки.

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

=LEFT(B5,SEARCH(«#»,SUBSTITUTE(B5,»-«,»#»,LEN(B5)-LEN(SUBSTITUTE(B5,»-«,»»))))-1)

2.2.2 Извлечь текст после последнего разделителя с формулой

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

Общая формула

=RIGHT(text_string,LEN(text_string)-SEARCH(«#»,SUBSTITUTE(text_string,»delimiter»,»#»,LEN(text_string)-LEN(SUBSTITUTE(text_string,»delimiter»,»»)))))

аргументы

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

Разделитель: Последний разделитель, определяющий, какой текст будет извлекаться из ячейки.

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

=RIGHT(B5,LEN(B5)-SEARCH(«#»,SUBSTITUTE(B5,»-«,»#»,LEN(B5)-LEN(SUBSTITUTE(B5,»-«,»»)))))

2.3 Извлечь текст после n-го символа

Посмотрите на пример ниже, есть список текстовой строки в диапазоне B4:B10, чтобы извлечь текст после третьего символа из каждой ячейки, вы можете применить формулу, основанную на функции MID и функции LEN.

Общая формула

=MID(text_string,nth_char+1,LEN(text_string))

аргументы

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

nth_char: Число представляет n-й символ, и вы извлечете текст после него.

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

=MID(B5,3+1,LEN(B5))

2.4 Извлечь n-е слово из текстовой строки

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

2.4.1 Извлечь n-е слово с помощью формулы

Вы можете комбинировать функции TRIM, MID, SUBSTITUTE, REPT и LEN, чтобы извлечь n-е слово из текстовой строки в ячейке.

Общая формула

=TRIM(MID(SUBSTITUTE(text_string,» «,REPT(» «,LEN((text_string))), (N-1)*LEN((text_string)+1, LEN((text_string)))

аргументы

Текстовая_строка: Текстовая строка, из которой вы хотите извлечь n-е слово. Это может быть ссылка на ячейку или фактическая текстовая строка, заключенная в двойные кавычки;

N: Число представляет n-е слово, которое вы извлечете из текстовой строки.

В этом случае диапазон B5:B10 содержит текстовые строки, D5:D10 содержит числа, представляющие n-е слово, давайте применим эту формулу для извлечения n-го слова из текстовой строки.

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

=TRIM(MID(SUBSTITUTE(B5,» «,REPT(» «,LEN(B5))), (D5-1)*LEN(B5)+1, LEN(B5)))

Примечание: Вы можете напрямую ввести n-е число в формулу следующим образом.

=TRIM(MID(SUBSTITUTE(B5,» «,REPT(» «,LEN(B5))), (2-1)*LEN(B5)+1, LEN(B5)))

2.4.2 Извлечение n-го слова с помощью пользовательской функции

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

1. нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модуль, а затем скопируйте приведенный ниже VBA в окно кода.

Код VBA: извлечь n-е слово из текстовой строки в ячейке

Function ExtractTheNthWord(Source As String, Position As Integer)
'Update by Extendoffice 20211202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = ""
Else
    FindWord = arr(Position - 1)
End If
End Function

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

4. Вернитесь к рабочему листу, содержащему текстовые строки, из которых вы хотите извлечь n-е слово. Выделите пустую ячейку, скопируйте или введите в нее приведенную ниже формулу и нажмите кнопку Enter ключ, чтобы получить n-е слово.

=FindWord(B5,D5)

Or

=FindWord(B5,2)

Примечание: в формуле D5 — это ячейка, содержащая число, представляющее n-е слово. Кроме того, вы можете напрямую заменить ссылку на ячейку числом.

5. Выберите ячейку результата и перетащите ее маркер автозаполнения вниз, чтобы извлечь n-е слово из текстовых строк других ячеек.

2.4.3 Извлеките n-е слово с помощью замечательного инструмента

Если вы не хотите вручную применять формулу или пользовательскую функцию, представленную выше, здесь рекомендуется Kutools for ExcelАвтора Извлечь n-е слово в ячейку полезность. С помощью этой функции вы можете легко извлечь n-е слово из текстовой строки в ячейке всего за несколько кликов.

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

2. в Помощник по формулам диалоговое окно необходимо настроить следующим образом.

2.1). Выберите список формул коробка, Извлечь n-е слово в ячейку опция выделена;

2.2). Ячейка поле, выберите ячейку, содержащую текстовую строку, из которой вы хотите извлечь n-е слово;

2.3). N-й поле, выберите ячейку, содержащую n-е число, или непосредственно введите число в соответствии с вашими потребностями;

2.4) Нажмите ОК.

3. Затем из текстовой строки в ячейке B5 извлекается n-е (второе) слово, и вы можете видеть, что в то же время создается формула. Выберите эту ячейку результата и перетащите ее маркер автозаполнения вниз, чтобы получить n-е слово из других текстовых строк.

Нажмите, чтобы узнать больше об этой функции.

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

2.5 Извлечение текста до или после n-го вхождения разделителя

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

2.5.1 Извлечение текста перед n-м вхождением разделителя

Вы можете использовать функцию ВЛЕВО вместе с функциями ПОДСТАВИТЬ и НАЙТИ для извлечения текста перед n-м вхождением разделителя из ячейки в Excel.

Общая формула

=LEFT(SUBSTITUTE(text_string,»delimiter»,CHAR(9),n),FIND(CHAR(9),SUBSTITUTE(text_string,»delimiter»,CHAR(9),n),1)-1)

аргументы

Текстовая_строка: Текстовая строка, из которой вы хотите извлечь текст. Это может быть ссылка на ячейку или фактическая текстовая строка, заключенная в двойные кавычки;

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

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

=LEFT(SUBSTITUTE(B5,» «,CHAR(9),2),FIND(CHAR(9),SUBSTITUTE(B5,» «,CHAR(9),2),1)-1)

Примечание: В формуле B5 — это ячейка, содержащая текстовую строку, из которой вы хотите извлечь текст; « » здесь представляет собой пробел, а число 2 представляет второе вхождение пробела. Вы можете изменить их в соответствии с вашими потребностями.

2.5.2 Извлечение текста после n-го вхождения разделителя

Чтобы извлечь текст после n-го вхождения разделителя, вы можете применить функцию ПРАВИЛЬНО с функциями ПОДСТАВИТЬ, ДЛСТР и НАЙТИ.

Общая формула

=RIGHT(SUBSTITUTE(text_string, «delimiter», CHAR(9), n), LEN(text_string)- FIND(CHAR(9), SUBSTITUTE(text_string, «delimiter», CHAR(9), n), 1) + 1)

аргументы

Текстовая_строка: Текстовая строка, из которой вы хотите извлечь текст. Это может быть ссылка на ячейку или фактическая текстовая строка, заключенная в двойные кавычки;

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

Теперь вы можете применить эту формулу для извлечения текста после второго вхождения пробела из каждой ячейки в диапазоне B5:B10 следующим образом.

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

=RIGHT(SUBSTITUTE(B5, » «, CHAR(9), 2), LEN(B5)- FIND(CHAR(9), SUBSTITUTE(B5, » «, CHAR(9), 2), 1) + 1)

2.6 Извлечение текста до или после разрыва строки

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

2.6.1 Извлечение текста до разрыва первой строки с формулой

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

Общая формула

=LEFT(cell, SEARCH(CHAR(10), cell)-1)

аргументы

Моб: Ячейка, из которой вы хотите извлечь текст до первого разрыва строки.

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

=LEFT(B5, SEARCH(CHAR(10), B5)-1)

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

Примечание: В формуле CHAR(10) представляет разрыв строки в Windows.

2.6.2 Извлечение текста после последнего разрыва строки с формулой

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

Общая формула

=TRIM(RIGHT(SUBSTITUTE(cell,CHAR(10),REPT(» «,200)),200))

аргументы

Моб: Ячейка, из которой вы хотите извлечь текст до первого разрыва строки.

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

=TRIM(RIGHT(SUBSTITUTE(B5,CHAR(10),REPT(» «,200)),200))

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

Примечание: В формуле CHAR(10) представляет разрыв строки в Windows.

2.7 Извлечение текста до или после слова

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

2.7.1 Извлечь текст перед определенным словом с помощью формулы

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

Общая формула

=IFERROR(LEFT(cell,FIND(word,cell)-1),cell)

аргументы

Моб: Ячейка, из которой вы хотите извлечь текст перед определенным словом.

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

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

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

=IFERROR(LEFT(B5,FIND(«Excel»,B5)-1),B5)

Ноты:

1) Эта формула чувствительна к регистру.

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

2.7.2 Извлечь текст после определенного слова с помощью формулы

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

Общая формула

=TRIM(MID(cell,SEARCH(word,cell)+LEN(word),255))

аргументы

Моб: Ячейка, из которой вы хотите извлечь текст после определенного слова.

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

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

=TRIM(MID(B5,SEARCH(«Excel»,B5)+LEN(«Excel»),255))

Затем вы можете увидеть все тексты после извлечения слова «Excel» в каждой ячейке, как показано на снимке экрана ниже.

Ноты:

1) Эта формула нечувствительна к регистру.

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

2.7.3 Извлекайте текст до или после определенного слова с помощью замечательного инструмента

Если вы чувствуете, что использование смеси может вызвать много неудобств, здесь настоятельно рекомендуется Извлечь текст полезности Kutools for Excel. Эта функция помогает автоматизировать задачу извлечения в Excel всего за несколько кликов.

1. Нажмите Кутулс > Текст > Извлечь текст для включения этой функции.

2. в Извлечь текст диалоговом окне выполните следующие настройки.

2.1) Убедитесь, что вы находитесь в Извлечь по местоположению вкладка;

2.2). Диапазон поле, щелкните кнопка для выбора диапазона ячеек, из которых вы хотите извлечь тексты;

2.3). Опции раздел:

Чтобы извлечь все тексты перед словом, выберите перед текстом переключатель, а затем введите слово в текстовое поле;

Чтобы извлечь все тексты после слова, выберите после текста переключатель, а затем введите слово в текстовое поле.

2.4) Нажмите OK кнопка. Смотрите скриншот:

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

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

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

Примечание: Эта функция чувствительна к регистру.

Нажмите, чтобы узнать больше об этой функции.

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


3. Извлечение между символами/словами

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

3.1 Извлечение текста между двумя символами

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

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

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

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

=SUBSTITUTE(MID(SUBSTITUTE(«/» & B5&REPT(» «,6),»/»,REPT(«,»,255)),2*255,255),»,»,»»)

Затем текст между двумя одинаковыми символами «/» извлекается из каждой ячейки диапазона. Смотрите скриншот:

Примечание:

1) B5 это ячейка, из которой вы хотите извлечь текст между двумя одинаковыми символами;

2) «/” — это два одинаковых символа, между которыми вы хотите извлечь текст.

Вам нужно изменить эти переменные на основе ваших собственных данных.

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

Узнав, как извлекать текст между двумя одинаковыми символами в ячейке, здесь мы продемонстрируем формулу для извлечения текста между двумя разными символами. Как показано на снимке экрана ниже, чтобы извлечь только адрес электронной почты между «<» и «>» из каждой ячейки в столбце B, вы можете сделать следующее.

Общая формула

=MID(LEFT(cel,FIND(«end_char»,cell)-1),FIND(«start_char»,cell)+1,LEN(cell))

аргументы

Моб: Ячейка, из которой вы хотите извлечь текст между двумя разными символами;

Конечный_символ: Конечный символ двух разных символов;

Начальный_символ: Начальный символ двух разных символов.

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

=MID(LEFT(B5,FIND(«>»,B5)-1),FIND(«<«,B5)+1,LEN(B5))

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

3.1.3 Извлекайте текст между двумя символами с помощью замечательного инструмента

Здесь настоятельно рекомендуется Извлечь строки между указанным текстом особенность Kutools for Excel чтобы помочь вам легко извлечь текст между двумя одинаковыми или разными символами в ячейке Excel.

1. Выберите пустую ячейку для вывода результата, а затем щелкните Кутулс > Формула Помощник > Формула Помощник.

2. в Помощник по формулам диалоговом окне выполните следующие настройки.

2.1) Проверьте Фильтр поле, а затем введите слово «Извлечь» в текстовое поле;

2.2). Выберите список формул поле, щелкните Извлечь строки между указанным текстом вариант;

2.3). Ввод аргументов раздел:

В разделе Ячейка поле, выберите ячейку, из которой вы хотите извлечь текст (здесь я выбираю ячейку B5);

В разделе Начальные символы введите начальный символ из двух разных символов;

В разделе Конец char(s), введите конечный символ из двух разных символов.

2.4) Нажмите Хорошо. Смотрите скриншот:

3. Затем извлекается только текст между «<» и «>» в ​​ячейке B5. Между тем, формула была создана, вы можете выбрать эту ячейку результата, а затем перетащить ее дескриптор автозаполнения вниз, чтобы извлечь тексты из других ячеек в том же списке.

Нажмите, чтобы узнать больше об этой функции.

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

3.1.4 Извлечение текста между двумя символами (включая символы) по правилу

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

1. Нажмите Кутулс > Текст > Извлечь текст.

2. в Извлечь текст диалоговом окне выполните следующие настройки.

2.1) Нажмите Извлечь по правилу вкладка;

2.2). Диапазон , нажмите кнопка, чтобы выбрать диапазон ячеек, где вы хотите извлечь текст между символами;

2.3). Текст введите, введите <*>;

Советы: <(Основной ключ) и >” — это символы, между которыми вы хотите извлечь текст, * — это подстановочный знак, представляющий любое количество символов. Вы можете ввести условие в соответствии с вашими потребностями.

2.4) Нажмите Добавить кнопка, чтобы добавить условие в Описание правила список;

2.5) Нажмите Ok кнопка. Смотрите скриншот:

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

Затем текст между указанными символами (включая символы) извлекается из каждой ячейки в выбранном диапазоне оптом.

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

3.2 Извлечение текста между двумя словами

Помимо извлечения текста между двумя символами, вам также может понадобиться извлечь текст между двумя словами. Например, извлеките все текстовые строки между двумя словами «KTE» и «feature» из каждой ячейки в столбце B, как показано на снимке экрана ниже. Вы можете попробовать один из следующих способов, чтобы сделать это.

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

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

Общая формула

=MID(cell,SEARCH(«start_word»,cell)+3,SEARCH(«end_word»,cell)-SEARCH(«start_word»,cell)-4)

аргументы

Моб: ячейка, из которой вы хотите извлечь все текстовые строки между двумя словами;

Начальное_слово: начальное слово из двух слов, после которого вы хотите извлечь все текстовые строки;

Длина1: длина символа начального слова.

End_word: конечное слово двух слов, которые вы хотите извлечь из всех текстовых строк перед ним.

Длина2: длина символа начального слова плюс 1.

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

=MID(B5,SEARCH(«KTE»,B5)+3,SEARCH(«feature»,B5)-SEARCH(«KTE»,B5)-4)

Внимание: В формуле число 3 представляет длину символа слова «KTE»; число 4 представляет длину символа слова «KTE» плюс 1.

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

3.2.2 Извлекайте текст между двумя словами с помощью замечательного инструмента

Многим пользователям Excel может быть трудно запомнить формулы и работать с ними. Здесь, с Извлечь строки между указанным текстом особенность Kutools for Excel, вы можете легко извлечь текст между двумя словами всего за несколько кликов.

1. Выберите ячейку для вывода результата и нажмите Кутулс > Формула Помощник > Формула Помощник.

2. в Формула Помощник диалоговое окно необходимо настроить следующим образом.

2.1) Проверьте Фильтр поле, а затем введите слово «Извлечь» в текстовое поле;

2.2). Выберите список формул поле, щелкните Извлечь строки между указанным текстом вариант;

2.3). Ввод аргументов раздел:

В разделе Ячейка поле, выберите ячейку, из которой вы хотите извлечь текст (здесь я выбираю ячейку B5);

В разделе Начальные символы поле введите начальное слово двух слов, которые вы хотите извлечь из всех текстовых строк после него;

В разделе Конечный символ(ы) введите конечное слово двух слов, которые вы хотите извлечь из всех текстовых строк перед ним.

2.4) Нажмите Хорошо. Смотрите скриншот:

3. Затем извлекаются все текстовые строки между двумя словами «KTE» и «feature» в ячейке B5. Между тем, формула была создана, вы можете выбрать эту ячейку результата, а затем перетащить ее дескриптор автозаполнения вниз, чтобы извлечь тексты из других ячеек в том же списке.

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


Извлечь числа по позиции

Для списка буквенно-цифровых строк может быть три случая:

  1. Номер стоит в начале текста;
  2. Номер в конце текста;
  3. Номер может быть где угодно в тексте.

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

1 Извлечь число слева от строки

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

Общая формула

=LEFT(cell, MATCH(FALSE, ISNUMBER(MID(cell, ROW(INDIRECT(«1:»&LEN(cell)+1)), 1) *1), 0) -1)

аргументы

Моб: Ячейка, из которой вы хотите извлечь число слева от текстовой строки.

Примечание:

1) Если вы используете Excel 2019 и более ранние версии, вам нужно нажать кнопку Ctrl + Shift + Enter клавиши для подтверждения этой формулы массива.

2) Если вы используете Excel 365 или Excel 2021, просто подтвердите эту формулу кнопкой Enter .

Выберите пустую ячейку, введите приведенную ниже формулу и нажмите Ctrl + Shift + Enter or Enter Ключ, чтобы получить результат. Выберите эту ячейку результата, а затем перетащите ее маркер автозаполнения вниз, чтобы получить номера других ячеек.

=LEFT(B5, MATCH(FALSE, ISNUMBER(MID(B5, ROW(INDIRECT(«1:»&LEN(B5)+1)), 1) *1), 0) -1)

Ноты:

1) Если ячейка содержит только числа, будет извлечено все число.

2) Эта формула извлекает только числа слева от текстовой строки. Если в середине или в конце текстовой строки есть числа, они будут проигнорированы.


2 Извлечь число справа от строки

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

Общая формула

=RIGHT(cell, LEN(cell) — MAX(IF(ISNUMBER(MID(cell, ROW(INDIRECT(«1:»&LEN(cell))), 1) *1)=FALSE, ROW(INDIRECT(«1:»&LEN(cell))), 0)))

аргументы

Моб: Ячейка, из которой вы хотите извлечь число из начала текстовой строки.

Примечание:

1) Если вы используете Excel 2019 и более ранние версии, вам нужно нажать кнопку Ctrl + Shift + Enter клавиши для подтверждения этой формулы массива.

2) Если вы используете Excel 365 или Excel 2021, просто подтвердите эту формулу клавишей Enter.

Выберите пустую ячейку, введите приведенную ниже формулу и нажмите Ctrl + Shift + Enter or Enter Ключ, чтобы получить результат. Выберите эту ячейку результата, а затем перетащите ее маркер автозаполнения вниз, чтобы получить номера других ячеек.

=RIGHT(B5, LEN(B5) — MAX(IF(ISNUMBER(MID(B5, ROW(INDIRECT(«1:»&LEN(B5))), 1) *1)=FALSE, ROW(INDIRECT(«1:»&LEN(B5))), 0)))

Ноты:

1) Если ячейка содержит только числа, будет извлечено все число.

2) Эта формула извлекает числа только справа от текстовой строки. Если в середине или в начале текстовой строки есть числа, они будут проигнорированы.


3. Извлечь все числа из любой позиции в текстовой строке.

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

3.1 Извлечь все числа из любой точки строки с помощью формулы

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

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

=SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(—MID(B5, ROW(INDIRECT(«1:»&LEN(B5))), 1)) * ROW(INDIRECT(«1:»&LEN(B5))), 0), ROW(INDIRECT(«1:»&LEN(B5))))+1, 1) * 10^ROW(INDIRECT(«1:»&LEN(B5)))/10)

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

3.2 Извлечение всех чисел из любой точки строки с помощью VBA

Приведенная выше формула слишком длинная и сложная для многих пользователей Excel. На самом деле вы можете запустить скрипт VBA для автоматизации задачи в Excel. Вы можете сделать следующее.

1. нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. В дебюте Microsoft Visual Basic для приложений окна, нажмите Вставить > Модуль. Затем скопируйте приведенный ниже VBA в окно кода модуля.

Код VBA: извлечь все числа из любой точки текстовой строки

Sub ExtrNumbersFromRange()
'Updated by Extendoffice 20220106
    Dim xRg As Range
    Dim xDRg As Range
    Dim xRRg As Range
    Dim nCellLength As Integer
    Dim xNumber As Integer
    Dim strNumber As String
    Dim xTitleId As String
    Dim xI As Integer
    xTitleId = "KutoolsforExcel"
    Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8)
    If TypeName(xDRg) = "Nothing" Then Exit Sub
    Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8)
    If TypeName(xRRg) = "Nothing" Then Exit Sub
    xI = 0
    strNumber = ""
  For Each xRg In xDRg
    xI = xI + 1
    nCellLength = Len(xRg)
    For xNumber = 1 To nCellLength
      If IsNumeric(Mid(xRg, xNumber, 1)) Then
        strNumber = strNumber & Mid(xRg, xNumber, 1)
      End If
    Next xNumber
    xRRg.Item(xI) = strNumber
    strNumber = ""
  Next xRg
End Sub

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

4. Затем еще один KutoolsforExcel всплывает диалоговое окно. В этом диалоговом окне выберите ячейку назначения и щелкните ОК.

Затем все числа извлекаются из каждой ячейки в выбранном диапазоне оптом.


4. Извлечение чисел после определенного текста

Как показано на снимке экрана ниже, чтобы извлечь любые числа после определенного текста «Нет», в этом разделе представлены два метода, которые помогут вам это сделать.

4.1 Извлечение чисел после определенного текста с помощью формулы

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

Общая формула:

=LOOKUP(10^6,1*MID(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&»0123456789″,FIND(«text»,» «&cell&» «))),{2,3,4,5,6}))

аргументы

Моб: Ячейка, из которой вы хотите извлечь числа после определенного текста;

Текст: Текст, после которого вы хотите извлечь числа.

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

=LOOKUP(10^6,1*MID(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&»0123456789″,FIND(«No.»,» «&B5&» «))),{2,3,4,5,6}))

Ноты:

1) Если ячейка не содержит определенного текста, формула вернет #Н/Д.

2) Формула чувствительна к регистру.

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

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

1. нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модуль, а затем скопируйте приведенный ниже код VBA в окно кода модуля.

Код VBA: извлекать числа после определенного текста в ячейке

Function GetNumberAfterTheChar(Rng As Range, Char As String)
'Updated by Extendoffice 20220106
Dim xValue As String
Dim xRntString As String
Dim xStart As Integer
Dim xC
    xValue = Rng.Text
    xStart = InStr(1, xValue, Char, vbTextCompare)
    If IsEmpty(xStart) Then
            GetNumberAfterTheChar = ""
            Exit Function
    End If
    If xStart < 1 Then
        GetNumberAfterTheChar = ""
        Exit Function
    End If
    xStart = xStart - 1 + Len(Char)
    If xStart < 1 Then
        GetNumberAfterTheChar = ""
        Exit Function
    End If
    xValue = Mid(xValue, xStart + 1)
    xRntString = ""
    For xI = 1 To Len(xValue)
        xC = Mid(xValue, xI, 1)
        Select Case Asc(xC)
        Case 48 To 57
            xRntString = xRntString & xC
       Case Else
            Exit For
        End Select
    Next
   GetNumberAfterTheChar = xRntString
End Function

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

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

=GetNumberAfterTheChar(B5,»No. «)

Ноты:

1) В этой формуле B5 — это ячейка, из которой вы хотите извлечь число, а «No. ” — это конкретный текст, после которого вы хотите извлечь число. Вы можете изменить их по мере необходимости.

2) Если между конкретным текстом и числом есть разделитель, добавьте разделитель в конце текста. В этом случае я добавил пробел после текста «Нет», который в итоге отображается как «Нет. ».

3) Этот метод нечувствителен к регистру;

4) Если ячейка не содержит определенного текста, формула вернет пустой результат.


Статьи по теме:

Учебное пособие по Excel: разделение ячеек текста, чисел и дат (разделение на несколько столбцов)
Этот учебник разделен на три части: разделенные текстовые ячейки, разделенные числовые ячейки и разделенные ячейки даты. Каждая часть содержит различные примеры, которые помогут вам понять, как обрабатывать задание разделения при возникновении одной и той же проблемы.
Нажмите, чтобы узнать больше …

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

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


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Понравилась статья? Поделить с друзьями:
  • Excel символы при написании формул
  • Excel символы начиная с определенного
  • Excel символы для переноса
  • Excel символы внутри строки
  • Excel символы вместо цифр