Количество символов в ячейке Excel: формула подсчета и функция
При работе с таблицами Excel в некоторых случаях пользователю нужно определить количество символов в определенной ячейке. Если содержимое ячейки незначительно, то это без особых усилий можно сделать вручную. Но как быть, если символов достаточно много или, скажем, содержимое ячейки меняется в зависимости от какого-либо фактора или действия в таблице.
На самом деле выполнить поставленную задачу достаточно просто, ведь в Эксель предусмотрена функция под названием “ДЛСТР”, которая применяется именно в таких случаях.
Количество символов в одной ячейке
Ниже приведен алгоритм действий для использования функции “ДЛСТР”:
- Становимся в ту ячейку, куда планируем вставить функцию, после чего щелкаем по кнопке “Вставить функцию” (с левой стороны от строки формул).
Количество знаков в столбце или строке
Как и многие другие действия, подсчет количества символов в столбце или строке можно автоматизировать, и вовсе не обязательно добавлять и настраивать аргументы функции для каждой ячейки вручную. В качестве примера мы выполним поставленную задачу для столбца. Для строки действия аналогичны с соответствующими корректировками:
- Чтобы растянуть результат на другие строки столбца наводим указатель мыши на правый нижний угол ячейки с функцией “ДЛСТР”, как только он сменит вид на небольшой плюсик, зажав левую кнопку мыши тянем его вниз до той строки, для которой мы хотим получить аналогичный результат.
- Как мы можем заметить, благодаря этому нехитрому действию нам удалось в считанные секунды получить данные по количеству символов для каждой ячейки выбранного столбца.
Ранее мы упоминали, что в качестве аргумента функции “ДЛСТР” можно указать только адрес одной конкретной ячейки. Поэтому, чтобы определить суммарное количество знаков во всех ячейках столбца нужно воспользоваться одним из способов подсчета суммы значений. Подробнее ознакомиться со всеми методами можно в нашей статье – “Как посчитать в Экселе сумму столбца”.
Давайте к примеру, воспользуемся одним из способов:
- Выделяем ячейки столбца. Далее нажимаем кнопку “Сумма” в разделе инструментов “Редактирование” (вкладка “Главная”).
- Результат в виде суммарного количества символов во всех ячейках столбца отобразится в ячейке сразу под выделенным диапазоном.
Определение количества знаков в разбросанных ячейках
Рассмотренный выше способ удобен и применим только, когда речь идет про ячейки одного столбца или строки. Но что делать, когда нужно определить количество знаков в ячейках, разбросанных по документу и находящихся в разных столбцах и ячейках.
В этом случае нас опять выручит суммирование значений ячеек. Вот, что нужно сделать:
-
- Отмечаем ячейку, куда планируем вставить формулу. Далее ставим знак “равно” (“=”) и через знак плюса добавляем функции “ДЛСТР” для каждой ячейки, которая должна участвовать в финальном расчете. Например, нам нужно определить итоговое количество знаков в ячейках A2, A5, A10, B3, B10, C8 и C12. Следовательно, финальная формула должна выглядеть следующим образом:=ДЛСТР(A2)+ДЛСТР(A5)+ДЛСТР(A10)+ДЛСТР(B3)+ДЛСТР(B10)+ДЛСТР(C8)+ДЛСТР(C12).
- После того, как формула набрана, нажимаем клавишу Enter и получаем готовый результат в выбранной ячейке.
Заключение
Некоторые пользователи, столкнувшись с такой задачей, как подсчет количества знаков в определенной ячейке или диапазоне ячеек в Excel тратят немало усилий на выполнение данной процедуры вручную, не догадываясь о наличии специально предназначенной для этого функции ДЛСТР, освоение которой займет пару минут, а результатом станет безошибочный результат и экономия одного из самых главных ресурсов – времени.
Попробуйте попрактиковаться
Ниже приведены некоторые примеры того, как работает функция ДЛСТР.
Скопируйте приведенную ниже таблицу и вставьте ее в ячейку A1 на листе Excel. Перетащите формулу из ячейки B2 B4, чтобы увидеть длину текста во всех ячейках в столбце A.
Же еще этих мягких французских булок.
Съешь же еще этих мягких французских булок, да выпей чаю.
Подсчет символов в одной ячейке
Щелкните ячейку B2.
Введите формулу =ДЛСТР(a2).
Формула подсчитывает символы в ячейке A2, 27 «Итого», которая содержит все пробелы и период в конце предложения.
Примечание: ДЛСТР подсчитывает пробелы после последнего символа.
Подсчет символов в нескольких ячейках
Щелкните ячейку B2.
Клавиши Ctrl + C, чтобы скопировать ячейку B2, а затем выделите ячейки B3 и B4 и нажмите клавиши Ctrl + V, чтобы вставить формулу в ячейки B3: B4.
Эта формула будет скопирована в ячейки B3 и B4, а функция подсчитает символы в каждой ячейке (20 27 и 45).
Подсчет общего количества символов
В книге с примерами щелкните ячейку В6.
Введите в ячейке формулу =СУММ(ДЛСТР(A2);ДЛСТР(A3);ДЛСТР(A4)) и нажмите клавишу ВВОД.
Так подсчитывается количество символов в каждой из трех ячеек, а суммируются в (92).
Как посчитать количество символов в ячейке excel
Если вам нужно подсчитать символы в ячейках, используйте функцию LEN,которая подсчитывать буквы, цифры, символы и все пробелы. Например, длина фразы «На улице сегодня 25 градусов, я пойду купаться» (не учитывая кавычки) составляет 46 символов: 36 букв, 2 цифры, 7 пробелов и запятая.
Чтобы использовать функцию, введите =LEN(ячейка) в формулу и нажмите клавишу ВВОД.
Несколько ячеек: Чтобы применить одинаковые формулы к нескольким ячейкам, введите формулу в первую ячейку и перетащите его вниз (или в поперек) диапазона ячеек.
Общее количество всех символов в нескольких ячейках можно получить с помощью функции СУММ вместе с функцией LEN. В этом примере функция LEN подсчитывают символы в каждой ячейке, а функция СУММ суммирует количество:
=СУММ((LEN( ячейка1 ),LEN( ячейка2 ),(LEN( ячейка3 )) )).
Попробуйте попрактиковаться
Ниже продемонстрировано несколько примеров использования функции LEN.
Скопируйте приведенную ниже таблицу и вкопируйте ее в ячейку A1 Excel таблицу. Перетащите формулу из ячейки B2 в ячейку B4, чтобы увидеть длину текста во всех ячейках столбца A.
Текстовые строки
Быстрые коричневые сысые.
Скакалка с коричневыми линами.
Съешь же еще этих мягких французских булок, да выпей чаю.
Подсчет символов в одной ячейке
Щелкните ячейку B2.
Введите =LEN(A2).
Формула подсчитывают символы в ячейке A2, итоговая сумма которых составляет 27 ( включая все пробелы и период в конце предложения).
ПРИМЕЧАНИЕ. LEN подсчитывают пробелы после последнего символа.
Подсчет символов в нескольких ячейках
Щелкните ячейку B2.
Нажмите CTRL+C, чтобы скопировать ячейку B2, выберем ячейки B3 и B4, а затем нажмите CTRL+V, чтобы вкопировать формулу в ячейки B3:B4.
При этом формула копируется в ячейки B3 и B4, а функция подсчитывают символы в каждой ячейке (20, 27 и 45).
Подсчет общего количества символов
В книге с примерами щелкните ячейку В6.
Введите в ячейке формулу =СУММ(ДЛСТР(A2);ДЛСТР(A3);ДЛСТР(A4)) и нажмите клавишу ВВОД.
Функции для работы с текстом
Основные функции для работы с текстом в VBA Excel:
Функция | Описание |
---|---|
Asc(строка) | Возвращает числовой код символа, соответствующий первому символу строки. Например: MsgBox Asc(«/Stop»). Ответ: 47, что соответствует символу «/». |
Chr(код символа) | Возвращает строковый символ по указанному коду. Например: MsgBox Chr(47). Ответ: «/». |
Format(Expression, , , ) | Преобразует число, дату, время в строку (тип данных Variant (String)), отформатированную в соответствии с инструкциями, включенными в выражение формата. Подробнее… |
InStr(, строка1, строка2, ) | Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с начала строки. Подробнее… |
InstrRev(строка1, строка2, ]) | Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с конца строки. Подробнее… |
Join(SourceArray,) | Возвращает строку, созданную путем объединения нескольких подстрок из массива. Подробнее… |
LCase(строка) | Преобразует буквенные символы строки в нижний регистр. |
Left(строка, длина) | Возвращает левую часть строки с заданным количеством символов. Подробнее… |
Len(строка) | Возвращает число символов, содержащихся в строке. |
LTrim(строка) | Возвращает строку без начальных пробелов (слева). Подробнее… |
Mid(строка, начало, ) | Возвращает часть строки с заданным количеством символов, начиная с указанного символа (по номеру). Подробнее… |
Replace(expression, find, replace, , , ) | Возвращает строку, полученную в результате замены одной подстроки в исходном строковом выражении другой подстрокой указанное количество раз. Подробнее… |
Right(строка, длина) | Возвращает правую часть строки с заданным количеством символов. Подробнее… |
RTrim(строка) | Возвращает строку без конечных пробелов (справа). Подробнее… |
Space(число) | Возвращает строку, состоящую из указанного числа пробелов. Подробнее… |
Split(Expression,,,) | Возвращает одномерный массив подстрок, извлеченных из указанной строки с разделителями. Подробнее… |
StrComp(строка1, строка2, ) | Возвращает числовое значение Variant (Integer), показывающее результат сравнения двух строк. Подробнее… |
StrConv(string, conversion) | Изменяет регистр символов исходной строки в соответствии с заданным параметром «conversion». Подробнее… |
String(число, символ) | Возвращает строку, состоящую из указанного числа символов. В выражении «символ» может быть указан кодом символа или строкой, первый символ которой будет использован в качестве параметра «символ». Подробнее… |
StrReverse(строка) | Возвращает строку с обратным порядком следования знаков по сравнению с исходной строкой. Подробнее… |
Trim(строка) | Возвращает строку без начальных (слева) и конечных (справа) пробелов. Подробнее… |
UCase(строка) | Преобразует буквенные символы строки в верхний регистр. |
Val(строка) | Возвращает символы, распознанные как цифры с начала строки и до первого нецифрового символа, в виде числового значения соответствующего типа. Подробнее… |
WorksheetFunction.Trim(строка) | Функция рабочего листа, которая удаляет все лишние пробелы (начальные, конечные и внутренние), оставляя внутри строки одиночные пробелы. |
В таблице перечислены основные функции VBA Excel для работы с текстом. С полным списком всевозможных функций вы можете ознакомиться на сайте разработчика.
Подсчет определенных букв в ячейке без учета регистра
Если вам нужен счетчик букв без учета регистра, вставьте функцию ПРОПИСН в ПОДСТАВИТЬ, чтобы преобразовать указанную букву в верхний регистр перед выполнением подстановки. И обязательно используйте для поиска заглавные буквы.
Например, чтобы подсчитать буквы «A» и «a» в B2, используйте следующее:
Другой способ — использовать вложенные функции замены:
Как вы можете видеть на скриншоте ниже, оба варианта безупречно подсчитывают вхождения указанной буквы в верхнем и нижнем регистре:
Другой способ — преобразовать всё в верхний или нижний регистр. Например:
Преимущество этого подхода заключается в том, что независимо от того, используются прописные либо строчные буквы, ваша формула подсчета без учета регистра будет возвращать правильный счет:
Примеры использования функции ПОИСК в Excel
Для нахождения позиции текстовой строки в другой аналогичной применяют ПОИСК и ПОИСКБ. Расчет ведется с первого символа анализируемой ячейки. Так, если задать функцию ПОИСК “л” для слова «апельсин» мы получим значение 4, так как именно такой по счету выступает заданная буква в текстовом выражении.
Функция ПОИСК работает не только для поиска позиции отдельных букв в тексте, но и для целой комбинации. Например, задав данную команду для слов «book», «notebook», мы получим значение 5, так как именно с этого по счету символа начинается искомое слово «book».
Используют функцию ПОИСК наряду с такими, как:
- НАЙТИ (осуществляет поиск с учетом регистра);
- ПСТР (возвращает текст);
- ЗАМЕНИТЬ (заменяет символы).
Важно помнить, что рассматриваемая команда ПОИСК не учитывает регистра. Если мы с помощью нее станем искать положение буквы «а» в слове «Александр», в ячейке появится выражение 1, так как это первый символ в анализируемой информации
При задании команды НАЙТИ «а» в том же отрезке текста, мы получим значение 6, так как именно 6 позицию занимает строчная «а» в слове «Александр».
Кроме того, функция ПОИСК работает не для всех языков. От команды ПОИСКБ она отличается тем, что на каждый символ отсчитывает по 1 байту, в то время как ПОИСКБ — по два.
Чтобы воспользоваться функцией, необходимо ввести следующую формулу:
В этой формуле задаваемые значения определяются следующим образом.
- Искомый текст. Это числовая и буквенная комбинация, позицию которой требуется найти.
- Анализируемый текст. Это тот фрагмент текстовой информации, из которого требуется вычленить искомую букву или сочетание и вернуть позицию.
- Начальная позиция. Данный фрагмент необязателен для ввода. Но, если вы желаете найти, к примеру, букву «а» в строке со значением «А015487.Мужская одежда», то необходимо указать в конце формулы 8, чтобы анализ этого фрагмента проводился с восьмой позиции, то есть после артикула. Если этот аргумент не указан, то он по умолчанию считается равным 1. При указании начальной позиции положение искомого фрагмента все равно будет считаться с первого символа, даже если начальные 8 были пропущены в анализе. То есть в рассматриваемом примере букве «а» в строке «А015487.Мужская одежда» будет присвоено значение 14.
При работе с аргументом «искомый_текст» можно использовать следующие подстановочные знаки.
- Вопросительный знак (?). Он будет соответствовать любому знаку.
- Звездочка (*). Этот символ будет соответствовать любой комбинации знаков.
Если же требуется найти подобные символы в строке, то в аргументе «искомый_текст» перед ними нужно поставить тильду (
Если искомый текст не был найден приложением или начальная позиция установлена меньше 0, больше общего количества присутствующих символов, в ячейке отобразиться ошибка #ЗНАЧ.
Если «искомый_текст» не найден, возвращается значение ошибки #ЗНАЧ.
Подсчет символов в ячейке
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);»»)) звучать функция?
vikttur В1 = «1» подойдет? 4).End(xlUp).Row
получается. звучать функция?благодарю за уделенноеIf trig =
количество чисел и 142,56 рубДа, еще, понятия:-
Александр, здравствуйтеA1=(47+В3-2)/D5-12А7:A11В статье Подсчет вхожденийнашла уже, спасибо
: Есть. В2 = «0»Макросом можно такFor i =XraptorxGuest время False Then x
количество цифр несколькоподсчитать кол-во чисел
Как найти слово в экселе — способы фильтрации
Excel содержит в себе 3 способа текстовой фильтрации, иными словами, фильтровать можно по 3 критериям вхождения.
Ячейка содержит, начинается с, либо заканчивается на — какой то конкретной паттерн.
В нашем случае для фильтрации целого слова, когда слово содержится в середине строки — во всех таких случаях после слова и перед будут располагаться пробелы. Поэтому мы можем задать именно такой критерий фильтрации, (пример — «* слово *») . Пробелы являются тем самым ограничителем, который позволит ячейки, в которых слово середине фразы, а фильтровать полностью и исключить ситуаций, когда оно будет входить в другие слова. «Звездочки» нужны для того, чтобы сообщить Excel, что в строке действительно есть пробелы — по умолчанию он их просто убирает перед поиском, по-видимому, воспринимая их наличие как случайность.
Критерий номер 2. — Строка заканчивается на наше слово. В этом случае она будет заканчиваться наше слово, и перед ним обязательно должен быть пробел, допустим. У нас будет рот и в конце строки не может быть слово крот. Такая строка не должна фильтроваться. Нужно чтобы перед словом рот был пробел.
И критерий номер 3 — ячейка должна начинаться на наше слово — в таком случае пробел должен быть после нашего слова, по аналогичной причине.
Проблема заключается в том, что в Excel нельзя фильтровать сразу по 3 критериям — можно только по двум. Этой ситуации есть простой лайфхак:1. Перед каждой строкой и после нее добавляем пробел (=» «&A1&» «)2. После этого фильтруем по полученному столбцу уже наше слово с пробелами перед и после него и специальными «звездочками» перед и после этих пробелов соответственно (пример — «* слово *»), для того, чтобы отфильтровать слова, которое обязательно содержат перед ними и после них пробел. Это и будут ячейки, содержащие наше слово.
Подсчет определенных букв в диапазоне без учета регистра.
Вы уже знаете, что ПОДСТАВИТЬ — функция, чувствительная к регистру. Поэтому наша формула для подсчета также чувствительна к регистру.
Чтобы игнорировать регистр, следуйте подходам, продемонстрированным в предыдущем примере.
Используйте функции ПРОПИСН и СТРОЧН, введите прописную либо заглавную букву и укажите ссылку на нее:
На скриншоте ниже показана последняя формула в действии:
Совершенно аналогично, подобный метод можно применить, если мы будем считать число вхождений в диапазон какого- то слова. Вернемся к нашему примеру.
Чтобы подсчитать, сколько раз сочетание «А2» в точном виде встречается в наших данных, запишем выражение:
Если не нужно учитывать регистр букв, то тогда —
То есть, мы берем формулы, использованные нами для отдельной ячейки, меняем в них ссылку на диапазон данных и обрабатываем затем при помощи СУММПРОИЗВ.
Вы можете использовать функцию СУММ, но в формуле массива, как мы также уже рассматривали ранее.
Вот как вы можете подсчитывать символы в Excel с помощью функции ДЛСТР. Если вы хотите знать, как считать слова, а не отдельные знаки, вы найдете несколько полезных формул в нашей следующей статье, следите за обновлениями!
Возможно, вам будут также полезны:
Как извлечь подстроку после последнего вхождения разделителя
При работе со сложными текстовыми выражениями, которые содержат несколько вхождений одного и того же разделителя, вам часто может потребоваться получить текст справа от последнего появления разделителя. Чтобы упростить понимание, взгляните на следующие исходные данные и желаемый результат:рис4
Как вы можете видеть на скриншоте выше, столбец A содержит список ошибок. Ваша цель — получить описание ошибки, которое идет после последнего двоеточия. Дополнительная сложность заключается в том, что исходные значения могут содержать разное количество разделителей, например, A3 содержит 3 двоеточия, а A5 — только одно.
Ключом к поиску решения является определение позиции последнего разделителя (последнее вхождение двоеточия в этом примере). Для этого вам нужно будет выполнить несколько несложных операций:
- Подсчитайте количество разделителей в исходной строке. Это несложно:
- Вычисляете общую ее длину с помощью ДЛСТР(A2).
- Определяем длину без разделителей, используя формулу ПОДСТАВИТЬ, которая заменяет все вхождения двоеточия ничем: ДЛСТР(ПОДСТАВИТЬ(A2; «:»; «»))
- Наконец, вы вычитаете длину исходной строки без разделителей из общей длины: ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;»:»;»»))
Чтобы убедиться, что формула работает правильно, вы можете ввести ее в отдельную ячейку, и результатом будет 2, то есть количество двоеточий в ячейке A2.
- Замените последний разделитель на какой-нибудь уникальный символ. Чтобы извлечь текст, который идет после последнего разделителя, нам нужно каким-то образом «пометить» это последнее вхождение разделителя. Для этого давайте заменим последнее вхождение двоеточия символом, который нигде не встречается в исходных значениях, например, знаком доллара ($).
Если вы знакомы с синтаксисом функции ПОДСТАВИТЬ, вы можете помнить, что у нее есть 4-й необязательный аргумент (номер вхождения), который позволяет заменять только конкретное появление указанного символа. И поскольку мы уже вычислили количество разделителей, просто впишите рассмотренное выше выражение в четвертый аргумент функции ПОДСТАВИТЬ:
Если вы поместите эту формулу в отдельную ячейку, она вернет: ERROR: 432 $ Connection timed out
- Определяем позицию последнего разделителя. В зависимости от того, на какой символ вы заменили последний разделитель, используйте ПОИСК (без учета регистра) или НАЙТИ (с учетом регистра), чтобы определить позицию этого символа. Мы заменили последнее двоеточие на знак $, поэтому используем следующую формулу, чтобы узнать его местоположение:
В этом примере формула возвращает 10, что является позицией $ в измененном тексте.
- Получаем подстроку справа от последнего разделителя. Теперь, когда вы знаете позицию последнего разделителя, все, что вам нужно сделать, это вычесть это число из общей длины строки и использовать ПРАВСИМВ, чтобы вернуть это количество символов из конца исходного текста:
Как показано на скриншоте ниже, формула работает отлично:
Замечание. В случае, если ячейка не содержит ни одного вхождения указанного разделителя, будет возвращена исходная строка целиком.