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

Подсчет вхождений в 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

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

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 бывает очень полезен – вопрос лишь в том, какой конкретно алгоритм использовать. А это в свою очередь зависит от ситуации и условий поставленной задачи.

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

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

  • количество символов в каждой ячейке не должно превышать определенное значение
  • нет ограничений по длине на одну ячейку, но есть лимит на суммарное количество символов в нескольких
  • когда есть ограничение по количеству символов снизу, иначе говоря, минимальная длина
  • есть ограничение по количеству введенных в ячейку определенных символов (например, не более одного знака “!”)

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

Количество символов в ячейке – формула

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

формула количества символов в ячейке
Результат работы формулы

Посчитать количество определённых символов в ячейке

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

Например, вот формула для подсчёта количества букв “у” в ячейке A1.

=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;"у";""))

Пример - ДЛСТР для подсчета встречаемости буквы в ячейке

Подсчет встречаемости буквы “у” в ячейке

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

Количество цифр в ячейке

Подробное руководство в моей исчерпывающей статье “Посчитать цифры в ячейках и ячейки с цифрами“. А я приведу лишь формулу массива оттуда:

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;{1;2;3;4;5;6;7;8;9;0};"")))

Есть и другой вариант – с помощью функции СЧЁТ:

=СЧЁТ(ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1)+1)

Количество английских букв в ячейке

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

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);{A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z};"")))

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

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);СИМВОЛ(СТРОКА(ДВССЫЛ("65:90")));"")))

Количество русских букв в ячейке

Проблема с русскими буквами (также известными как кириллица) в том, что буква ё, как строчная, так и заглавная, находится за пределами сплошного диапазона в таблицах ANSI и UNICODE, поэтому нужно либо перечислять русские буквы явно:

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);{А;Б;В;Г;Д;Е;Ё;Ж;З;И;Й;К;Л;М;Н;О;П;Р;С;Т;У;Ф;Х;Ц;Ч;Ш;Щ;Ъ;Ы;Ь;Э;Ю;Я};"")))

либо подсчет этой буквы вести отдельно и суммировать с результатом для диапазона из 32 остальных букв. Формула вводится сочетанием Ctrl + Shift + Enter

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);СИМВОЛ(СТРОКА(ДВССЫЛ("192:233")));"")))+ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);"Ё";""))

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

Поэтому рекомендуется либо явное перечисление букв, либо использование вместо СИМВОЛ функции ЮНИСИМВ, где для символов кириллицы “железно” застолбили диапазон 1040-1071:

=СУММ(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);ЮНИСИМВ(СТРОКА(ДВССЫЛ("1040:1071")));"")))+ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(ПРОПИСН(A1);"Ё";""))

Я все же за явное перечисление букв :)

Количество любых букв в ячейке

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

=СУММ(НЕ(СОВПАД(ПРОПИСН(ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1));СТРОЧН(ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1))))+0)

Формула вводится сочетанием клавиш Ctrl + Shift + Enter и считает количество букв (способных менять регистр) в ячейке A1.

Процедура подсчета символов в ячейках

Поскольку ввод формул — занятие муторное, я разработал для задачи подсчёта символов несложную процедуру в !SEMTools. Прелесть процедуры в том, что она считает все моментально в пару кликов и выводит результат в столбец справа (если активна опция вывода в соседний столбец).

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

Подсчет количества символов в нескольких ячейках процедурой !SEMTools

Посчитать количество символов в нескольких ячейках одновременно

Если нет задачи считать длину содержимого каждой из ячеек, а нужна сразу сумма длин, можно использовать ту же функцию ДЛСТР, но в несколько ином виде — в виде формулы массива:

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

Текст формулы:

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

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

 

Kodek

Пользователь

Сообщений: 35
Регистрация: 01.08.2015

Есть диапазон B5:B100
В каждой ячейке находится два вида символов «●» и «○» в различном соотношении.
Необходимо подсчитать все «точки» в диапазоне, и проигнорировать «кружки».

Я вижу два решения данной проблемы.

Первое решение — удалить из строки все «кружки» и посчитать точки формулой =ДЛСТР(ПОДСТАВИТЬ(B5;»○»;»»)) но я не знаю как сделать так, чтобы данная формула посчитала весь диапазон.

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

 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#2

25.06.2017 16:39:32

Цитата
Подсчет определенных символов

Заменяете символ на «» и считаете разницу в количестве знаков

 

Garni

Пользователь

Сообщений: 336
Регистрация: 06.03.2013

У меня получилось считать формулой =СЧЁТЕСЛИ(B5:B100 ;»●»)

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#4

25.06.2017 16:49:19

UDF по ‘рецепту’ от Kuzmich,

Код
Function СЧЁТСИМВ(rng As Range, ch As String)
Dim cl As Range
For Each cl In rng
    СЧЁТСИМВ = СЧЁТСИМВ + Len(cl) - Len(Replace(cl, ch, ""))
Next
End Function

Прикрепленные файлы

  • СЧЁТСИМВ.xlsm (14.07 КБ)

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

 

Kodek

Пользователь

Сообщений: 35
Регистрация: 01.08.2015

Эээ… а как эту функцию прикрутить в лист?

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

ЧТО ТАКОЕ ФУНКЦИЯ ПОЛЬЗОВАТЕЛЯ(UDF)?

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

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#7

25.06.2017 17:02:56

Цитата
Garni написал: получилось …. =СЧЁТЕСЛИ(B5:B100 ;»●»)

Не могли бы в файле показать? А то у меня не получилось (см. A13)  :(  

Прикрепленные файлы

  • СЧЁТСИМВ.xlsm (13.97 КБ)

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

 

Kodek

Пользователь

Сообщений: 35
Регистрация: 01.08.2015

Могу ли я в дополнение спросить где в GoogleDocs созать VBA скрипт? Он предлагает только js создать…

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

 в GoogleDocs нет VBA

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

 

Bema

Пользователь

Сообщений: 6761
Регистрация: 15.02.2016

По подсказке Kuzmichа формула массива:
=СУММ(ДЛСТР(A1:A11))-СУММ(ДЛСТР(ПОДСТАВИТЬ(A1:A11;»●»;»»)))
Формула массива вводится сочетанием клавиш Ctrl+Shift+Enter. Если все сделаете правильно, формула обернется фигурными скобками { }. Ввод скобок с клавиатуры не принесет результат.

Изменено: Bema25.06.2017 17:21:05

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Kodek

Пользователь

Сообщений: 35
Регистрация: 01.08.2015

Bema, вот, спасибо. Великолепное решение. Без использования сторонних элементов. ГуглДок мне в результате выдал =ArrayFormula(СУММ(ДЛСТР(B5:B7))-СУММ(ДЛСТР(ПОДСТАВИТЬ(B5:B7;»●»;»»)))) вот такую формулу.
Sanja, спасибо за решение с использованием VBA. Также пригодится для «десктопной» версии, так как удобнее и проще в ряде случаев.
Garni, тоже спасибо за попытку, но, к сожалению, у меня не сработало. А очень хотелось такого изящного и простого решения.

Изменено: Kodek25.06.2017 17:29:16

 

Bema

Пользователь

Сообщений: 6761
Регистрация: 15.02.2016

#12

25.06.2017 17:41:45

Kodek, пожалуйста. Вариант чуть короче:
=СУММ(ДЛСТР(A1:A11)-ДЛСТР(ПОДСТАВИТЬ(A1:A11;»●»;»»)))

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

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

На самом деле выполнить поставленную задачу достаточно просто, ведь в Эксель предусмотрена функция под названием “ДЛСТР”, которая применяется именно в таких случаях.

Содержание

  • Количество символов в одной ячейке
  • Количество знаков в столбце или строке
  • Определение количества знаков в разбросанных ячейках
  • Заключение

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

Ниже приведен алгоритм действий для использования функции “ДЛСТР”:

  1. Становимся в ту ячейку, куда планируем вставить функцию, после чего щелкаем по кнопке “Вставить функцию” (с левой стороны от строки формул).Кнопка вставки функции в ячейку
  2. Откроется окно Мастера функций. Кликнув по текущей категории выбираем пункт “Текстовые”.Выбор текстовых операторов в мастере функций
  3. В предложенном перечне операторов выбираем “ДЛСТР” и жмем кнопку OK.Вставка функции ДЛСТР
  4. На экране отобразится окно аргументов функции. На самом деле у данного оператора всего одно поле для заполнения, в котором нужно указать координаты ячейки, количество символов в которой нужно посчитать. Причем указать можно только адрес конкретной ячейки, ссылки на несколько ячеек или диапазон элементов оператором не поддерживаются. Прописать координаты в поле аргумента можно вручную. Также выбрать нужную ячейку можно, щелкнув левой кнопкой мыши по ней, предварительно кликнув по области ввода информации. После того, как значение аргумента заполнено, кликаем OK.Заполнение аргументов функции ДЛСТР
  5. Результат в виде количества символов в выбранной ячейке (в аргументах функции) сразу же отобразится на экране. А готовая формула функции отобразится, соответственно, в строке формул.Результат функции ДЛСТР в ячейке

Количество знаков в столбце или строке

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

  1. Чтобы растянуть результат на другие строки столбца наводим указатель мыши на правый нижний угол ячейки с функцией “ДЛСТР”, как только он сменит вид на небольшой плюсик, зажав левую кнопку мыши тянем его вниз до той строки, для которой мы хотим получить аналогичный результат.Растягивание формулы на другие ячейки столбца
  2. Как мы можем заметить, благодаря этому нехитрому действию нам удалось в считанные секунды получить данные по количеству символов для каждой ячейки выбранного столбца.Растягивание формулы на другие ячейки столбца

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

Давайте к примеру, воспользуемся одним из способов:

  1. Выделяем ячейки столбца. Далее нажимаем кнопку “Сумма” в разделе инструментов “Редактирование” (вкладка “Главная”).Кнопка для суммирования значений ячеек столбца
  2. Результат в виде суммарного количества символов во всех ячейках столбца отобразится в ячейке сразу под выделенным диапазоном.Сумма значений ячеек столбца

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

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

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

    1. Отмечаем ячейку, куда планируем вставить формулу. Далее ставим знак “равно” (“=”) и через знак плюса добавляем функции “ДЛСТР” для каждой ячейки, которая должна участвовать в финальном расчете. Например, нам нужно определить итоговое количество знаков в ячейках A2, A5, A10, B3, B10, C8 и C12.
      Следовательно, финальная формула должна выглядеть следующим образом:
      =ДЛСТР(A2)+ДЛСТР(A5)+ДЛСТР(A10)+ДЛСТР(B3)+ДЛСТР(B10)+ДЛСТР(C8)+ДЛСТР(C12).Количество символов в разбросанных ячейках
    2. После того, как формула набрана, нажимаем клавишу Enter и получаем готовый результат в выбранной ячейке.Количество символов в разбросанных ячейках

Заключение

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

Like this post? Please share to your friends:
  • Подсчет количества символов в строке excel
  • Подсчет количества рабочих дней между датами в excel
  • Подсчет количества повторяющихся значений в столбце excel
  • Подсчет количества оценок в excel
  • Подсчет количества отфильтрованных строк в excel