Количество вхождений символа в ячейке excel


Найдем количество вхождений определенной Буквы или любого символа в ячейке EXCEL.

Определим, сколько букв Z в слове

Zigzag

(

слово находится в ячейке

A

1

)

.

Формула для подсчета символа Z в слове

Zigzag

(с учетом регистра), см.

файл примера

:

=ДЛСТР(A1) — ДЛСТР(ПОДСТАВИТЬ(A1;»Z»;»»))

Формула для подсчета символа Z (или z) в слове

Zigzag

(без учета РЕгиСТра):

=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A1);»z»;»»))

Для подсчета количества пробелов (код символа пробела — 32) в ячейке используйте формулу:

=ДЛСТР(A1) — ДЛСТР(ПОДСТАВИТЬ(A1;СИМВОЛ(32);»»))

В статье

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

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

О поиске позиции n-го вхождения буквы в слове или в текстовой строке можно прочитать

здесь

.

Подсчет вхождений в MS EXCEL Букв (Символов) в ТЕКСТовой строке

​Смотрите также​ ЮрияМ.​: Смотря что у​ar = Cells(Rows.Count,​

​Cells(i, 5) =​AVI​ excel как будет​:​​ 1​​ Меня интересует кол-во​

​ ) =3​ отличаются.​Serge_007​Уточняю второй вопрос​ (включая и «=»​
​Аналогичная формула =СУММПРОИЗВ(ДЛСТР(A7:A11)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A7:A11); {«1″;»2″};»»)))​

​ вхождений некоторой последовательности​Найдем количество вхождений определенной​2. Формула, показанная​ вас в А1,​
​ 4).End(xlUp).Row​

​ CStr(13 — Len(Trim(Cells(i,​: Добрый день!​ звучать функция?{/post}{/quote}​0mega​
​trig = True​

​ чисел​0mega​0mega​:​Quote​ )​

​ может подсчитать количество​ символов в текстовой​ Буквы или любого​ в этой теме.​ дата или текст…​

excel2.ru

Подсчет символов в диапазоне в MS EXCEL

​For i =​ 4))) & Trim(Cells(i,​В столбце D​

​нашла уже, спасибо​,​​Else​​Serge_007​

​:​: Да, конечно.​0mega​
​(0mega)200?’200px’:»+(this.scrollHeight+5)+’px’);»>вопрос 2-ой​

​P.S.​ цифр (1 и​
​ строке.​

​ символа в ячейке​Или Вы видите​Юрий М​ 3 To ar​​ 4)))​​ число с количеством​
​ LEN​

​По второму вопросу…​trig = False​: Макрофункции — это​kim​=(47+В3-2)/D5-12 =4​

​, вчитайтесь в вопрос​​A1=(47+В3-2)/D5-12​​если эти 2​ 2) в диапазонах​О поиске позиции n-го​ EXCEL.​ только свое сообщение?​: Скопируйте название своей​Cells(i, 5) =​Next i​ цифр от 7​Подскажите пожалуйста как в​0mega​

excel2.ru

Счет определенных символов в ячейке

​End If​​ не ВБА, как​
​, здравствуйте​
​- это не​
​_Boroda_​
​кол-во цифр ?​ вопроса имеют отличие​

​ с числами. ​
​ вхождения буквы в​
​Определим, сколько букв Z​
​аррр​ темы в окно​ Format(Cells(i, 4), «‘0000000000000»)​

​End Sub​
​ до 12-ти​ Excel показать количество​:​Next​ Вы его понимаете​Я прекрасно понимаю,​

​ набор случайных символов.​​:​кол-во математических знаков?​ в решении, тогда​

​Пусть в диапазоне​
​ слове или в​

​ в слове Zigzag​: Спасибо!​ поиска и выбирайте,​Next i​Я определил сколько​Мне необходимо в​ определённых символов. В​

​kim​​MsgBox x​​Hugo​​ что этот вопрос​
​Это совокупность математических​

​Quote​ (включая и «=»​
​ просьба к модераторам​

​А7:A11​​ текстовой строке можно​
​ (слово находится в​
​Numit​
​ что Вам больше​End Sub​ нулей добавить, но​
​ столбец Е добавить​​ частности есть таблица​​,​​End Sub​​: VBA​​ не вписывается в​​ действий с конкретными​​(_Boroda_)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Вы хотите выковырять​
​ )​ перенести 2-ой вопрос​содержатся числа 1;​
​ прочитать здесь.​​ ячейке​​: Помогите пожалуйста,​​ подходит.​​AVI​​ как заставить их​​ эти же числа​​ с размерами. Нужно​​Спасибо,​​_Boroda_​

​Запятую грубо уничтожаем.​​ =ЕСЛИ(…)​​ числами и ячейками.​​ кол-во цифр из​​кол-во цифр: A1=(​​ в отдельную тему​
​ 22; 123; 8;​​Найдем количество вхождений определенного​A1​как формулой посчитать​Guest​​:​​ добавиться я не​ так, что бы​

​ суммировать сколько например​​Интересное решение со​​: Формулами​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub tt()​
​Учитывая, то обстоятельство​ И если топнуть​ формулы, которая выдает​47​_Boroda_​
​ 5. Формула, приведенная​ символа в диапазоне​).​
​ количество знаков в​: Спасибо нашел!!! =ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;».»;»»))​_Boroda_​ знаю​

​ общее их количество​​ размеров L и​
​ знаками​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(—(ЕЧИСЛО(-ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1))+ЕОШИБКА(-ПСТР(A1&» «;СТРОКА(ДВССЫЛ(«A2:A»&ДЛСТР(A1)+1));1))=2))-СУММ(—(ЕЧИСЛО(-ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1))+(ПСТР(A1&» «;СТРОКА(ДВССЫЛ(«A2:A»&ДЛСТР(A1)+1));1)=»,»)+ЕЧИСЛО(-ПСТР(A1&»»;СТРОКА(ДВССЫЛ(«A3:A»&ДЛСТР(A1)+2));1))=3))​Dim s As​
​ , что это​ на Enter то​ в ячейке​+В3-​: Пара вариантов по​ выше, вернет 5,​ ячеек.​Формула для подсчета символа​
​ ячейке?​
​ — работает как​, Е-мае, точно. Спасибо.​StoTisteg​ было 13, а​ сколько XL. Беда​wacko
​Numit​Последний кусок — исключительно​
​ String, i As​ вопрос не из​​ в ячейка А1​значение​2​
​ первому вопросу во​ т.к. в диапазоне​Определим, сколько букв Z​

​ Z в слове​​Заранее спасибо​​ часы ))​​Марат​
​:​ недостающие заменить нулями​ в том, что​: Помогите пожалуйста,​
​ для борьбы с​ Long, x As​ серии «МНЕ ОБЯЗАТЕЛЬНО​ будет результат вычисления​(то есть формат​)/D5-​ вложении​ содержится две цифры​ содержится в диапазоне​ Zigzag (с учетом​mazayZR​Юрий М​: Добрый день​Cells(i, 5)=Cstr(Trim(Cells(i, 5)))​ в начале числа.​

​ формулы которые я​​как формулой посчитать​ запятой. Если все​ Long​ НАДО. Я СКОПИРУЮ​ (напр 53,6451)​ ячейки не текстовый)?​

​12​​=ДЛСТР(B1)-ДЛСТР(ПОДСТАВИТЬ(B1;B2;»»))​ 1 (в числах​А7:A11​smile

​ регистра), см. файл​​: =ДЛСТР(A1)​
​: А если всегда​
​Помогите подсчитать количество​
​For j=13 to​То есть 41533892​ нашёл​ количество знаков в​
​ числа целые, то​Dim trig As​
​ И ВСТАВЛЮ ...​P.S.​kim​=​
​{=СУММ(--(ПСТР(B1;СТРОКА(ДВССЫЛ("A1:A"&ДЛСТР(B1)));1)=B2))}​ 1 и 123)​
​.​ примера:​
​Numit​ начинать с поиска?​
​ символов в ячейке.​ Len(Cells(i, 5).Value) Step​ должно поменяться на​например​
​ ячейке?​
​ попроще​
​ Boolean​
​ " а относится​
​Оказывается , я​
​:​
​3​

​По второму — Вы​​ и три цифры​
​Формула для подсчета (с​

​=ДЛСТР(A1) — ДЛСТР(ПОДСТАВИТЬ(A1;»Z»;»»))​: Спасибо, а то​ :-))​ Пример ячейка A1​ -1​
​ 0000041533892, а 31404053​

​=СУММПРОИЗВ (ДЛСТР ($E$2:$E$47)-ДЛСТР​

​Заранее спасибо​​Code200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(—(ЕЧИСЛО(-ПСТР(A1;СТРОКА(ДВССЫЛ(«A1:A»&ДЛСТР(A1)));1))+ЕОШИБКА(-ПСТР(A1&» «;СТРОКА(ДВССЫЛ(«A2:A»&ДЛСТР(A1)+1));1))=2))​

​s = «За​​ к «ХОЧУ ЗНАТЬ»​​ так же не​​0mega​​кол-во математических знаков?​​ хотите выковырять кол-во​
​ 2 (в числах​ учетом РЕгиСТра), см.​

​Формула для подсчета символа​​ прям вся измучалась​​Сергей​​ «1.09» и A2​
​Cells(i, 5)=»0″ &​

​ на 0000031404053​​ (ПОДСТАВИТЬ (ПРОПИСН ($E$2:$E$47);{«L»};»»)))​​mazayZR​​формулы массива​
​ 2 дня оштрафовали​
​ и еще сюда​ могу выковырять цифры​

excelworld.ru

Как посчитать количество знаков в ячейке?

​,​​ (включая и «=»​
​ цифр из формулы,​ 22 и 123).​ файл примера:​
​ Z (или z)​

​ :)​​: Есть формула которая​

​ «10» какую можно​​ Cells(i, 5)​Формулой получается так​или​

​: =ДЛСТР(A1)​​MCH​ 18 водителей на​ приплюсовать что я​

​ и из текста​​Если запись в​ )​ которая выдает в​
​0mega​=СУММПРОИЗВ(ДЛСТР(A7:A11)-ДЛСТР(ПОДСТАВИТЬ(A7:A11;B4;»»)))​

planetaexcel.ru

Подсчёт определённого количества символов в ячейке Excel

​ в слове Zigzag​Guest​ производит подсчет необходимых​ использовать функцию что​Next j​=ПОВТОР(«0″;13-ДЛСТР(D3))&D3​=СУММПРОИЗВ (ДЛСТР (E2:E27)-ДЛСТР​Numit​: =СУММПРОИЗВ(ЕЧИСЛО(—ПСТР(ПОДСТАВИТЬ(A1;»,»;»»);СТОЛБЕЦ(A:IU);1))*ЕОШ(—ПСТР(ПОДСТАВИТЬ(A1;»,»;»»);СТОЛБЕЦ(A:IU)+1;1)))​ 142,56 руб «​ в VBA-командах ,​

​ …​

​ ячейке A1 является​A1​

​ ячейке значение (то​

​: Доброго времени суток.​Формула для подсчета (без​

​ (без учета РЕгиСТра):​: а в английском​ знаков в ячейке.​ бы мне подсчитало​Не проверял, но​А как добавлять​

​ (ПОДСТАВИТЬ (E2:E27;»L»;»»)))​​: Спасибо, а то​

Добавить определённое количество символов в ячейку (Макросы/Sub)

​0mega​​s = Replace(s,​
​ все равно, не​поэтому еще 1​ формулой, а не​=​
​ есть формат ячейки​2003​ учета РЕгиСТра):​=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A1);»z»;»»))​ excel как будет​К примеру в​ сколько раз в​ попробуйте, должно работать​
​ определенное количество нулей​подсчитывают количество букв​ прям вся измучалась​:​
​ «,», «»)​​ смогу разобраться -​
​ доп вопрос​ текстом прийдется использовать​(47​ не текстовый)?​
​вопрос 1-й​
​=СУММПРОИЗВ(ДЛСТР(A7:A11)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A7:A11);»z»;»»)))​Для подсчета количества пробелов​
​ звучать функция?​ с лове «1)​
​ ячейке А1 и​_Boroda_​ в код я​ L и в​
​ :)​
​MCH​
​For i =​ поэтому ответ не​ячейка D1 содержит​ макрофункции.​+​

​0mega​​водоотвод​​Формула для одновременного подсчета​
​ (код символа пробела​Guest​ лжлордыаоррфвдао, 2) орапдолрп,​
​ сколько в ячейке​: Обязательно реально нули​
​ не знаю​
​ ячейках с XL​Guest​

​,​​ 1 To Len(s)​ является обязательным​ тект:​И в любом​
​В3-2)​
​:​
​кол-во букв "о"​ символов Z и​
​ - 32) в​: а в английском​
​ 3) длорааываы" подщитать​ А2 есть символ​
​ добавить? Просто поставить​
​КодSub ffff()​

​ тоже. И соответственно​​: а в английском​​_Boroda_​​If IsNumeric(Mid(s, i,​

excelworld.ru

Подсчет символов в ячейке

​Quote​​За 2 дня оштрафовали​

​ случае решение будет​/​to_Boroda_​ ?​ цифры 1 в​ ячейке используйте формулу:​ excel как будет​ количество «)»​ «.» тоесть результат​ формат «0000000000000» не​ar = Cells(Rows.Count,​ сумма больше нужной​ excel как будет​,​

​ 1)) Then​​(kim)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Да, еще, понятия:​ 18 водителей на​ тяжелым.​

​D5​​,​вопрос 2-ой​ диапазоне​=ДЛСТР(A1) — ДЛСТР(ПОДСТАВИТЬ(A1;СИМВОЛ(32);»»))​ звучать функция?{/post}{/quote}​

​vikttur​​ В1 = «1»​ подойдет?​ 4).End(xlUp).Row​

​ получается.​​ звучать функция?​благодарю за уделенное​If trig =​

​ количество чисел и​​ 142,56 руб​Да, еще, понятия:​-​

​Александр, здравствуйте​A1=(47+В3-2)/D5-12​А7:A11​В статье Подсчет вхождений​нашла уже, спасибо​

​: Есть.​​ В2 = «0»​
​Макросом можно так​For i =​
​Xraptorx​Guest​
​ время​ False Then x​

​ количество цифр несколько​​подсчитать кол-во чисел​

planetaexcel.ru

Как посчитать количество знаков в ячейке?

​ количество чисел и​​12 =​
​Это идеальное решение первого​кол-во цифр ?​(без учета РЕгиСТра):​
​ последовательности символов показано,​

​ LEN​​1. По совету​

​Guest​​Sub tt()​ 3 To ar​: да, формулой счетесли​

​: а в английском​​kim​ = x +​ отличаются. Правильное замечание.​

​ (2 18 142,56​​ количество цифр несколько​4​ вопроса​
​кол-во математических знаков?​=СУММПРОИЗВ(ДЛСТР(A7:A11)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A7:A11); {«z»;»1″};»»)))​

planetaexcel.ru

​ как подсчитать количество​

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


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

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

=LEN(cell_ref)-LEN(SUBSTITUTE(cell_ref, «character»,»»))

аргументы

Cell_ref: Ячейка содержит текст, внутри которого вы будете считать определенный символ. Вы также можете напрямую заменить cell_ref текстом, заключенным в кавычки;

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

Как пользоваться этой формулой?

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

=LEN(B3)-LEN(SUBSTITUTE(B3,»e»,»»))

В этом случае он возвращает результат 3, что означает, что символ «e» встречается в B3 три раза.

Tips: Вы можете напрямую ссылаться на символьную ячейку в формуле, как показано ниже. Получив первый результат, перетащите маркер заполнения, чтобы применить формулу к другим ячейкам.
=LEN(B3)-LEN(SUBSTITUTE(B3,C3,»»))

Заметки:

  • 1. Если конкретный символ не найден, он вернет 0;
  • 2. Функция ЗАМЕНА чувствительна к регистру;
  • 3. Если вы хотите подсчитать определенный символ в ячейке и проигнорировать регистр, используйте функцию ВЕРХНИЙ внутри ПОДСТАВКИ, как показано ниже:
  • =LEN(B3)-LEN(SUBSTITUTE(UPPER(B3),C3,»»))

Как работает эта формула?

  • 1. LEN(B3): Эта функция LEN вычисляет общую длину текста B3 и возвращает результат 20.
  • 2. LEN(SUBSTITUTE(B3,»e»,»»)): Функция ЗАМЕНА удаляет символ «e» из ячейки B3, а затем функция LEN вычисляет длину текста для ячейки B3 без специального символа «e». Здесь результат 17;
  • 3. Наконец, длина текста без символа «e» вычитается из общей длины текста исходной текстовой строки и получается общее количество «e» в ячейке B3 (20-17 = 3).

Связанные функции

Функция ДЛСТР в Excel
Функция LEN возвращает количество символов в текстовой строке.

Функция ПОДСТАВИТЬ в Excel
Функция SUBSTITUTE заменяет текст или символы в текстовой строке другим текстом или символами.


Родственные формулы


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

Kutools for Excel — Помогает вам выделиться из толпы

Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.

  • Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
  • Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
  • Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
  • 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.

Лента Excel (с Kutools for Excel установлены)


Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
  • Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.

Снимок экрана Excel (с установленной вкладкой Office)

Комментарии (1)


Оценок пока нет. Оцените первым!

I am trying to count the number of times a sub-string appears within a column of string data in Excel. Please see the below example.

The column of string data (tweets) looks like this:

   A
1  An example string with @username in it
2  RT @AwesomeUser says @username is awesome

The column with «substrings» (Twitter screen names) looks like this:

   B
1  username
2  AwesomeUser

I want to use a formula to count the number of times that a substring from B1, B2, etc. appears in the strings in column A. For example: a formula searching for B1 would return «2» and a search for B2 would return «1».

I can’t do it this way:

=COUNTIF(A:A, "username")

because COUNTIF only looks for strings, not substrings. This formula would always return «0».

Here’s a formula I thought might do it:

=SUMPRODUCT((LEN(A:A)-(LEN(SUBSTITUTE(A:A,"username",""))))/LEN("username"))

Unfortunately, I have 16,000 entries in column B and tens of thousands in A, so counting characters won’t work even on a high power PC (also, the result returned by the function is suspect).

I thought about using:

=COUNTIF(A:A, "*username*")

but COUNTIF requires a string with the star operators; I need to use cell references due to the volume of data.

My question: does anyone know how I can use a formula for this? If using COUNTIF, how do I get a cell reference in the conditional part of the statement (or use a function to substitute the string in the cell referenced within the conditional part of a COUNTIF statement)?

I know that I could parse the data, but I would like to know how to do it in Excel.

Skip to content

Как быстро сосчитать количество символов в ячейке Excel

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

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

Функция ДЛСТР (LEN в английской версии) полезна сама по себе, а в связи с другими функциями, такими как СУММ, СУММПРОИЗВ и ПОДСТАВИТЬ, она может решать и более сложные задачи. Далее в этом руководстве мы более подробно рассмотрим несколько основных и более сложных выражений для подсчета количества знаков в Excel.

  1. Как посчитать все символы в диапазоне
  2. Как подсчитать определенные знаки в ячейке
  3. Подсчет определенных букв в ячейке без учета регистра
  4. Как посчитать вхождения текста или подстроки в ячейку?
  5. Сколько раз встречается символ в диапазоне?
  6. Подсчет определенных букв в диапазоне без учета регистра.

Как посчитать все символы в диапазоне

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

=ДЛСТР(A2)+ДЛСТР(A3)+ДЛСТР(A4)

или

=СУММ(ДЛСТР(A2);ДЛСТР(A3);ДЛСТР(A4))

Описанное выше может хорошо работать для небольшого диапазона. Но вряд ли вы захотите таким образом складывать даже 20 чисел. Чтобы определить количество символов Excel в большем диапазоне, нам лучше придумать что-нибудь более компактное. Например, функцию СУММПРОИЗВ, которая перемножает массивы и возвращает сумму произведений.

Вот общая формула Эксель для подсчета символов в диапазоне:

=СУММПРОИЗВ(ДЛСТР( диапазон ))

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

= СУММПРОИЗВ(ДЛСТР(A1:A4))

Другой способ подсчета знаков в диапазоне — использовать функцию ДЛСТР в сочетании с СУММ:

{=СУММ(ДЛСТР(A1:A4))}

В отличие от СУММПРОИЗВ, функция СУММ по умолчанию не вычисляет массивы. Поэтому вам нужно не забыть нажать Ctrl + Shift + Enter, чтобы превратить ее в формулу массива.

Как показано на следующем скриншоте, СУММ возвращает такой же результат:

Как работает эта формула подсчета символов диапазона?

Это один из самых простых вариантов для подсчета знаков в Excel. Перво-наперво функция ДЛСТР вычисляет длину текста для каждого адреса в указанной области и возвращает их в виде массива чисел. Затем СУММПРОИЗВ или СУММ складывают эти числа и возвращают общий итог.

В приведенном выше примере суммируется массив из 4 чисел, которые представляют длины строк в ячейках от A1 до A4:

=СУММПРОИЗВ({23;13;23;17})

Примечание. Обратите внимание, что функция Excel ДЛСТР считает абсолютно все символы в каждой ячейке, включая буквы, числа, знаки препинания, специальные символы и все пробелы (ведущие, конечные и пробелы между словами).

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

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

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

=ДЛСТР( ячейка ) — ДЛСТР(ПОДСТАВИТЬ( ячейка ; символ ; «»))

Чтобы лучше понять этот расчет, разберём следующий пример.

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

Предполагая, что список доставленных товаров находится в столбце B (начиная с B2), и мы считаем число вхождений «A». Выражение выглядит следующим образом:

=ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(B2,»A»,»»))

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

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

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

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

Примечание. Функция ПОДСТАВИТЬ в Excel чувствительна к регистру, поэтому в приведенном выше выражении также учитывается регистр. Например, B7 содержит 2 вхождения буквы «A» — одно в верхнем регистре и второе в нижнем регистре. Учитываем только символы верхнего регистра, потому что мы передали «A» функции ПОДСТАВИТЬ.

Подсчет определенных букв в ячейке без учета регистра

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

Например, чтобы подсчитать буквы «A» и «a» в B2, используйте следующее:

=ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(B2);$C$1;»»))

Другой способ — использовать вложенные функции замены:

=ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;ПРОПИСН($C$1);»»);СТРОЧН($C$1);»»))

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

Другой способ — преобразовать всё в верхний или нижний регистр. Например:

=ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(B2);ПРОПИСН($C$1);»»))

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

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

Если вы хотите подсчитать, сколько раз определенная комбинация символов (например, определенный текст или подстрока) появляется в данной ячейке (например «A2» или «М5»), разделите количество определенных символов, возвращаемых приведенными выше формулами, на длину подстроки.

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

=(ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(B2;$C$1;»»)))/ДЛСТР($C$1)

Без учета регистра:

=(ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;ПРОПИСН($C$1);»»);СТРОЧН($C$1);»»)) )/ДЛСТР($C$1)

Где B2 — запись, содержащая всю текстовую строку, а C1 – тот текст (подстроку), который вы хотите подсчитать.

Как эта формула подсчитывает количество вхождений определенного текста в ячейку?

  1. Функция ПОДСТАВИТЬ удаляет указанное слово из исходного текста.
    В этом примере мы удаляем слово, введенное в ячейку С1, из исходного текста, расположенного в B2:
    ПОДСТАВИТЬ(B2; $C$1;»»)
  2. Затем функция ДЛСТР вычисляет длину текстовой строки без указанного слова.
    В этом примере ДЛСТР(ПОДСТАВИТЬ(B2; $C$1;»»)) возвращает длину текста в B2 после удаления всех букв и цифр, содержащихся во всех вхождениях «А2».
  3. После этого указанное выше число вычитается из общей длины исходной текстовой строки:
    ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(B2; $C$1;»»))

Результатом этой операции является количество символов, содержащихся во всех вхождениях целевого слова, которое в этом примере равно 4 (2 вхождения «A2», по 2 в каждом).

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

Сколько раз встречается символ в диапазоне?

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

СУММПРОИЗВ(ДЛСТР( диапазон ) -ДЛСТР(ПОДСТАВИТЬ( диапазон , символ , «»)))

В этом примере выражение принимает следующую форму:

=СУММПРОИЗВ(ДЛСТР(B2:B7)-ДЛСТР(ПОДСТАВИТЬ(B2:B7;$C$1;»»)))

А вот еще один способ для подсчета символов в диапазоне Excel:

{=СУММ(ДЛСТР(B2:B7)-ДЛСТР(ПОДСТАВИТЬ(B2:B7;$C$1;»»)))}

По сравнению с описанным ранее наиболее очевидным отличием здесь является использование СУММ вместо СУММПРОИЗВ. Другое отличие в том, что в данном случае требуется нажатие Ctrl + Shift + Enter. Думаю, вы помните, что в отличие от СУММПРОИЗВ, которая умеет работать с массивами, СУММ может обрабатывать массивы только при использовании её в формуле массива.

Разберем, как это работает.

Как вы, возможно, помните, функция ПОДСТАВИТЬ используется для замены всех вхождений указанного символа («A» в этом примере) пустой текстовой строкой («»).

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

Наконец, СУММПРОИЗВ суммирует числа в массиве и возвращает общее количество указанного символа в диапазоне.

Примечание. В ситуациях, когда вы подсчитываете количество вхождений определенной подстроки в диапазоне (например, заказы, начинающиеся с «A2»), вам необходимо разделить количество символов на длину подстроки. В противном случае каждый знак в подстроке будет учитываться индивидуально.  Например:

=СУММПРОИЗВ(ДЛСТР(B2:B7)-ДЛСТР(ПОДСТАВИТЬ(B2:B7;$C$1;»»)))/ДЛСТР($C$1)

Подсчет определенных букв в диапазоне без учета регистра.

Вы уже знаете, что ПОДСТАВИТЬ — функция, чувствительная к регистру. Поэтому наша формула для подсчета также чувствительна к регистру.

Чтобы игнорировать регистр, следуйте подходам, продемонстрированным в предыдущем примере.

Используйте функции ПРОПИСН и СТРОЧН, введите прописную либо заглавную букву и укажите ссылку на нее:

=СУММПРОИЗВ(ДЛСТР(B2:B7) — ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2:B7;ПРОПИСН($C$1);»»);СТРОЧН($C$1);»»)))

На скриншоте ниже показана последняя формула в действии:

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

Чтобы подсчитать, сколько раз сочетание «А2» в точном виде встречается в наших данных, запишем выражение:

=СУММПРОИЗВ((ДЛСТР(B2:B7)-ДЛСТР(ПОДСТАВИТЬ(B2:B7;$C$1;»»)))/ДЛСТР($C$1))

Если не нужно учитывать регистр букв, то тогда —

=СУММПРОИЗВ((ДЛСТР(B2:B7)-ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2:B7;ПРОПИСН($C$1);»»);СТРОЧН($C$1);»»)))/ДЛСТР($C$1))

То есть, мы берем формулы, использованные нами для отдельной ячейки, меняем в них ссылку на диапазон данных и обрабатываем затем при помощи СУММПРОИЗВ.

Вы можете использовать функцию СУММ, но в формуле массива, как мы также уже рассматривали ранее.

Вот как вы можете подсчитывать символы в Excel с помощью функции ДЛСТР. Если вы хотите знать, как считать слова, а не отдельные знаки, вы найдете несколько полезных формул в нашей следующей статье, следите за обновлениями!

Возможно, вам будут также полезны:

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

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