Посчитать количество символов до пробела в ячейке excel

0 / 0 / 0

Регистрация: 29.08.2010

Сообщений: 13

1

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

01.09.2010, 14:52. Показов 38362. Ответов 34


Студворк — интернет-сервис помощи студентам

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

Тесть есть символы в ячейке разделенные одним пробелом g1ht* kdjf1R 265kllzS T6xklcjxTQ
Нужна формула которая выдаст количество знаков по R то есть в данном случае 12. Пробел между словами всегда один.



0



956 / 596 / 11

Регистрация: 11.06.2010

Сообщений: 1,345

01.09.2010, 14:57

2

Код

=НАЙТИ(" ";A1;НАЙТИ(" ";A1)+1)-1

g1ht* kdjf1R 265kllzS T6xklcjxTQ в А1.



1



здесь больше нет…

3372 / 1670 / 184

Регистрация: 03.02.2010

Сообщений: 1,219

01.09.2010, 14:58

3

=НАЙТИ(» «;A1;НАЙТИ(» «;A1)+1)-1



1



0 / 0 / 0

Регистрация: 29.08.2010

Сообщений: 13

01.09.2010, 16:08

 [ТС]

4

Цитата
Сообщение от аналитика
Посмотреть сообщение

=НАЙТИ(» «;A1;НАЙТИ(» «;A1)+1)-1

К сожалению не работает.

Добавлено через 6 минут
=ПОИСК(» «,A1,ПОИСК(» «,A1)+1)-1
Все подправил, сейчас работает. Serge 007 и Аналитика спасибо большое.



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

27.10.2012, 15:21

5

Блин, а почему у меня не получается так сделать и при вводе этой формулы выдаёт ошибку



0



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

27.10.2012, 16:21

6

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



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

27.10.2012, 16:33

7

Спасибо, но я уже разобралась. У меня была такая же проблема, что и у автора темы и предложенная ему формула у меня не работала, а заработала вот эта: =НАЙТИ(» «;A1;НАЙТИ(» «;A1)+1)

Добавлено через 9 минут
Но работает она только тогда, когда её копируешь из вёрда например и вставляешь в строку для формул. Если же я пишу её от руки или пользуюсь Аргументом функций, то снова выдаёт ошибку…..



0



6875 / 2807 / 533

Регистрация: 19.10.2012

Сообщений: 8,562

27.10.2012, 16:55

8

Обе работают.
Возможно была беда в разделителях.



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

27.10.2012, 17:00

9

Вот моё задание в файле. Всё работает, только тогда, когда я копирую эту формулу откуда-то, а когда набираю вручную, то ошибка!



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

27.10.2012, 17:04

10

Если пишу формулу вручную НАЙТИ (» «;А1)+1 в аргументе функций в строке «Нач_позиция», пишет ошибку «Недопустимое» или «#ИМЯ»



0



2633 / 1333 / 255

Регистрация: 25.10.2010

Сообщений: 2,194

27.10.2012, 17:07

11

С вероятностью 90%: набираете вручную РУССКУЮ букву А в адресе ячейки



2



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

27.10.2012, 17:11

12

Цитата
Сообщение от Pelena
Посмотреть сообщение

С вероятностью 90%: набираете вручную РУССКУЮ букву А в адресе ячейки

И вы правы, вручную набирала, вот тупанула))))) Спасибо большое



0



Памирыч

28.10.2012, 02:02

Не по теме:

Pelena, Не в первый раз замечаю, как Вы с первого раза «угадываете» решение проблемы пользователя. Экстрасенс? (вопрос риторический, отвечать не нужно)



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

28.10.2012, 15:19

14

У меня ещё 1 вопрос. Хотела создать новую тему по этому вопросу, но не получается.
Вопрос следующий: У меня такое задание: Проставить в столбцах В и С значения 1 при условии, что в столбце А есть соответствие названия столбцов. Если же такого соответствия нет, то ставим 0.
Я формулу написала, но оно проставляет «1» и «0» только напротив тех слов, где они стоят самостоятельно в строке. Если же в строке с нужным словом ещё какое-либо слово, то просто выставляются нули. Что я не правильно делаю?)



0



Hugo121

6875 / 2807 / 533

Регистрация: 19.10.2012

Сообщений: 8,562

28.10.2012, 15:53

15

Visual Basic
1
=--ЕЧИСЛО(ПОИСК("фарфор";A2;1))



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

28.10.2012, 16:00

16

Всё-равно нули дальше показывает



0



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

28.10.2012, 16:24

17

Формула для выложенной вами книги, формулу поместите в ячейку B2:

Код

=ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($B$1;A2);0)>0;1;0)



0



0 / 0 / 0

Регистрация: 27.10.2012

Сообщений: 13

28.10.2012, 16:28

18

Так и сделала, пишет ошибку: #ИМЯ?



0



6875 / 2807 / 533

Регистрация: 19.10.2012

Сообщений: 8,562

28.10.2012, 16:29

19

Цитата
Сообщение от Yulia_eL
Посмотреть сообщение

Всё-равно нули дальше показывает

Голословные утверждения!



1



2633 / 1333 / 255

Регистрация: 25.10.2010

Сообщений: 2,194

28.10.2012, 16:32

20

Еще вариант (в ячейку B2)

Код

=--ЕЧИСЛО(НАЙТИ(B$1;$A2))

Можно копировать как вниз, так и вправо



0



 

Добрый день. Необходимо подсчитать количество символов слева и до знака «!» или «?».
Пример следующий — «Привет как дела! Все хорош отлично» — необходимо отразить количество символов до знака «!»

Уважаемые модераторы, уже поискал ответ на вопрос в Приемах и на Форуме, ответа не нашел.

 

_Boroda_

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

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

Контакты см. в профиле

Так нужно?
=МИН(ПОИСК({«.»:»!»};B2&{«.»:»!»}))
Формула массива. Вводится одновременным нажатием Контрл Шифт Ентер

Скажи мне, кудесник, любимец ба’гов…

 

Юрий М

Модератор

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

Контакты см. в профиле

Решение нужно формулами, макросами?

 

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

 

_Boroda_, спасибо огромное!!!

 

PooHkrd

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

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

Excel x64 О365 / 2016 / Online / Power BI

confic confov, только учтите, что если в ячейке нет, ни одного из двух знаков, то эта формула выдаст не верный результат.

Вот горшок пустой, он предмет простой…

 

_Boroda_

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

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

Контакты см. в профиле

#7

14.08.2017 18:10:58

Цитата
PooHkrd написал:
эта формула выдаст не верный результат

Почему неверный? Вы автор вопроса? Кто Вам сказал, что при отсутствии знаков нужно выводить не количество всех символов, а что-то иное? До тех пор, пока автор не уточнит этот момент, нет верной или неверной трактовки, есть различающиеся мнения. И вообще — я художник, я так вижу.

Скажи мне, кудесник, любимец ба’гов…

 

z_sir

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

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

#8

14.08.2017 20:10:27

Цитата
confic confov написал:
количество символов до знака «!»

15

Код
=ДЛСТР(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(A1;"!";ПОВТОР(" ";500));1;300)))
 
 

z_sir,спасибо, попробую и такой варианТ!

 

PooHkrd

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

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

Excel x64 О365 / 2016 / Online / Power BI

#11

15.08.2017 18:50:14

Цитата
_Boroda_ написал:
Почему неверный?

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

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

Сам разобрался.


Изменено: PooHkrd16.08.2017 09:30:50

Вот горшок пустой, он предмет простой…

 

подскажите пожалуйста, добавил к формуле еще один знак — ? =MIN(SEARCH({«.»;»!»;»?»};M13&{«.»;»!»;»?»})) , но почему то теперь значение получается всегда 1, как исправить ? чтобы формула подхватывала 3 знака 1) ! 2) . 3) ?

 

_Boroda_

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

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

Контакты см. в профиле

#13

16.08.2017 17:34:25

Знак вопроса и звездочка для ПОИСК — подстановочные знаки. ? — 1 любой символ, * — любое количество любых символов
чтобы нацти сами ? и * нужно в ПОИСКе перед ними поставить тильду. Вот так

Код
=МИН(ПОИСК({".":"!":"~?"};B2&{".":"!":"?"}))

PooHkrd,

Цитата
PooHkrd написал:
В моем понимании это не корректный результат

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

И, кстати, это

Цитата
PooHkrd написал:
Просто предупредил ТС, чтобы учел этот момент

и это

Цитата
PooHkrd написал:
формула выдаст не верный результат

— разные вещи.

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

Код
=МИН(ЕСЛИОШИБКА(ПОИСК({".":"!":"~?"};B2);""))

Скажи мне, кудесник, любимец ба’гов…

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, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…

Содержание

  • Подсчет знаков
    • Способ 1: подсчет символов
    • Способ 2: подсчет символов в столбце
    • Способ 3: подсчет символов в нескольких ячейках с помощью автосуммы
    • Способ 4: подсчет символов в нескольких ячейках при помощи функции
  • Вопросы и ответы

Подсчет символов в ячейках в Microsoft Excel

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

Подсчет знаков

Для подсчета символов в Excel существует специальная функция, которая называется «ДЛСТР». Именно с её помощью можно просуммировать знаки в конкретном элементе листа. Существует несколько способов её использования.

Способ 1: подсчет символов

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

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

  3. Запускается Мастер функций. Ищем в нем наименование ДЛСТР и жмем на кнопку «OK».
  4. Переход к функции ДЛСТР в Microsoft Excel

  5. Вслед за этим происходит открытие окна аргументов. Данная функция имеет только один аргумент – адрес конкретной ячейки. Причем нужно заметить, что в отличие от большинства других операторов, этот не поддерживает ввод ссылок на несколько ячеек или на массив. В поле «Текст» вводим вручную адрес элемента, в котором нужно подсчитать символы. Можно сделать по-другому, что будет проще для пользователей. Устанавливаем курсор в поле аргумента и просто кликаем по нужной области на листе. После этого её адрес появится в поле. Когда данные внесены, жмем на кнопку «OK».
  6. Аргументы функции ДЛСТР в Microsoft Excel

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

Результат подсчета количества символов функцией ДЛСТР в Microsoft Excel

Способ 2: подсчет символов в столбце

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

  1. Становимся в нижний правый угол ячейки с формулой. Появляется маркер выделения. Зажимаем левую кнопку мыши и тянем его параллельно той области, в которой хотим подсчитать количество символов.
  2. Маркер выделения в Microsoft Excel

  3. Формула копируется на весь диапазон. Результат сразу же виден на листе.

Примменение автосуммы в Microsoft Excel

Урок: Как сделать автозаполнение в Excel

Способ 3: подсчет символов в нескольких ячейках с помощью автосуммы

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

  1. Подсчитаем количество знаков для каждой отдельной ячейки, как это было описано в предыдущем варианте.
  2. Выделяем диапазон, в котором указано количество символов, и жмем на кнопку «Сумма», расположенную во вкладке «Главная» в блоке настроек «Редактирование».
  3. Примменение автосуммы в Microsoft Excel

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

Сумма символов всех ячеек в Microsoft Excel

Lumpics.ru

Урок: Как посчитать сумму в Экселе

Способ 4: подсчет символов в нескольких ячейках при помощи функции

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

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

    =СУММ(ДЛСТР(адрес_ячейки1);ДЛСТР(адрес_ячейки2);…)

  2. Функция СУММ в Microsoft Excel

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

Рассчет суммы функцией символов СУММ в Microsoft Excel

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

Еще статьи по данной теме:

Помогла ли Вам статья?

  • Что делает функция ДЛСТР?
  • Синтаксис
  • Форматирование
  • Примеры применения ДЛСТР
    • Пример 1. Посчитать слова
    • Пример 2 – посчитать встречаемость фрагмента в тексте
    • Пример 3 – извлечь или удалить последнее слово
    • Пример 4 – удалить первые N символов / первое слово
    • Пример 5 – последние символы ячейки
    • Пример 6 – в формуле массива
    • Пример 7 – извлечь цифры
Раздел функций Текстовые
Название на английском LEN
Волатильность Не волатильная
Похожие функции СЧЁТЗ

Что делает функция ДЛСТР?

Функцию часто называют “Длина строки”, что не совсем корректно, потому что речь не о строке, а о строковом выражении значения аргумента.

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

  • Хотя визуально 2500% это 5 символов, при преобразовании в текстовую строку это всего лишь 25, поэтому ДЛСТР возвращает 2.
  • Даты преобразуются в целые числа, где единицей является 1.01.1900 – вот почему для неё функция возвращает длину 1.
функция ДЛСТР - простейшие примеры
Примеры взаимодействия функции ДЛСТР с разными текстовыми и числовыми значениями в ячейках

Есть символ, который функция ДЛСТР вообще не учитывает. Это апостроф (‘), когда он в начале ячейки. Если в начале ячейки идут два символа апострофа подряд, второй уже учитывается.

Почему так происходит? Дело в том, что апостроф в Excel — один из специальных символов-операторов, переводящий формат ячейки в текстовый.

Синтаксис

=ДЛСТР(Аргумент)

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

Форматирование

Если входящее значение не в текстовом формате, оно конвертируется в него.

Ячейки в формате даты воспринимаются как числа, поэтому содержат обычно 5 знаков (если это не даты, близкие к 1900 году).

Процентный формат также конвертируется в натуральное число, например, 2500% = 25 (2 символа, см. таблицу примеров выше).

Примеры применения ДЛСТР

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

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

Пример 1. Посчитать слова

Как узнать, сколько слов в ячейке Excel? Обычно их на 1 больше, чем пробелов между ними. Если пробел один, значит слов – два, если два – то слов три, и так далее.

Если есть вероятность, что пробелов больше 1 между словами, или они есть в начале и конце ячейки, их можно устранить функцией СЖПРОБЕЛЫ.

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

  • с ними,
  • без них,
  • и вычислив разницу.

Как получить строку без пробелов? Тут поможет функция ПОДСТАВИТЬ.

Так будет выглядеть формула для ячейки A1, учитывающая все эти нюансы. СЖПРОБЕЛЫ удаляет лишние пробелы, ПОДСТАВИТЬ удаляет их, а ДЛСТР измеряет длину строк:

=ДЛСТР(A1) - ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);" ";"")) + 1

Пример 2 – посчитать встречаемость фрагмента в тексте

Есть ли в тексте определенный символ? И если есть, то сколько их?

Рассмотрим пару примеров формул.

Есть ли в ячейке лишние пробелы

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

=ДЛСТР(СЖПРОБЕЛЫ(A1))<>ДЛСТР(A1)
ДЛСТР для проверки лишних пробелов - пример
Формула проверки наличия лишних пробелов в строке

Формула очевидна и довольно проста. Если длина ячейки после удаления лишних пробелов функцией СЖПРОБЕЛЫ равна исходной – значит, их в ней нет, а если наоборот, не равна – есть.

Обратите внимание, что, несмотря на то, что в самой постановке вопроса звучит условие ЕСЛИ, функция ЕСЛИ тут не нужна. Если равенство верное, Excel сам вставит в ячейку результат ИСТИНА, и ЛОЖЬ, если наоборот.

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

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

Если мы ищем один символ, это позволит сразу понять его встречаемость.

Для удаления произвольного символа из строки нам понадобится функция ПОДСТАВИТЬ.

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

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

Если же текстовый фрагмент длиной 2 и более символов – нам потребуется еще и поделить полученный результат на его длину:

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

В данной формуле исходный текст в ячейке A1, а подсчитываемый фрагмент – в ячейке B1.

пример - функция ДЛСТР для подсчета встречаемости текстового фрагмента
Подсчет встречаемости текстового фрагмента

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

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

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

Пример 3 – извлечь или удалить последнее слово

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

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

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

Подробно пример рассмотрен здесь: Удалить последнее слово в Excel

Пример 4 – удалить первые N символов / первое слово

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

Механика проста:

  1. вычисляем позицию первого пробела функцией ПОИСК,
  2. вычитаем из длины строки (ДЛСТР) это число
  3. Извлекаем функцией ПРАВСИМВ полученную разницу из исходной строки

ПРАВСИМВ - пример с извлечением второго слова

Удаляем первое слово из ячейки, получая второе

Подробнее пример рассмотрен в статье про функцию ПРАВСИМВ.

Если же количество символов уже известно заранее, формула еще проще – нужны только ДЛСТР и ПРАВСИМВ:

=ПРАВСИМВ(A1;ДЛСТР(A1)-4)
ДЛСТР для удаления первых N символов - пример
Удаляем из строки первые 4 символа функциями ДЛСТР и ПРАВСИМВ

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

Пример 5 – последние символы ячейки

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

  • удалить последние символы в ячейке
  • извлечь последние символы из ячеек

А ниже примеры, как заменить последний символ в ней, взяв на 1 символ меньше с помощью ЛЕВСИМВ, и конкатенации с нужным текстом через амперсанд:

=ЛЕВСИМВ(A1;ДЛСТР(A1)-1)&"Текст вместо последнего символа"

Или с помощью функции ЗАМЕНИТЬ, которая на вход возьмет длину строки как позицию заменяемого символа:

=ЗАМЕНИТЬ(A1;ДЛСТР(A1);1;"Текст вместо последнего символа")

Пример 6 – в формуле массива

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

Здесь поможет формула массива на основе комбинации функции ДЛСТР и функции СУММ. Первая создаст массив значений длины каждой из ячеек диапазона, а вторая просуммирует эти значения:

={СУММ(ДЛСТР(ДИАПАЗОН))}

Пример - функция ДЛСТР в формуле массива

Функция ДЛСТР в формуле массива

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

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

Пример 7 – извлечь цифры

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

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

Like this post? Please share to your friends:
  • Посчитать количество строк в excel по строкам
  • Посчитать количество символов в ячейке excel vba
  • Посчитать количество строк в excel если фильтр
  • Посчитать количество рисунков в word
  • Посчитать количество строк в excel python