Как сделать подсчет символов в Google Sheets
Хотя подсчет слов и символов в Google Sheets используется в редких случаях, некоторые из нас все же ожидают увидеть эту функциональность прямо в меню. Но в отличие от Google Docs, для Google Sheets это делает функция LEN.
Несмотря на то, что существует много разных способов подсчета символов в электронных таблицах, сегодняшняя запись в блоге будет посвящена функции ДЛСТР, поскольку ее основная цель в таблицах — ну, подсчет 🙂 Однако сама по себе она почти никогда не используется. Ниже вы узнаете, как правильно использовать Google Sheets LEN и найдете наиболее востребованные формулы для вычисления символов в электронных таблицах.
Функция Google Sheets LEN – использование и синтаксис
Основное и единственное назначение функции LEN в Google Sheets — получение длины строки. Он настолько прост, что даже требует всего 1 аргумент:
=ДЛСТР(текст)
- он может взять либо сам текст в двойных кавычках:
=LEN(“Иггдрасиль”) - или ссылка на ячейку с интересующим текстом:
=ДЛСТР(A2)
Посмотрим, есть ли особенности использования функции в электронных таблицах.
Количество символов в Google Sheets
Начну с самой простой операции: сделать подсчет символов в Google Таблицах самым распространенным способом — со ссылкой на ячейку с текстом с помощью функции ДЛСТР.
Я ввожу формулу в ячейку B2 и копирую ее вниз по всему столбцу, чтобы подсчитать символы в каждой строке:
=ДЛСТР(A2)
Примечание. Функция ДЛСТР вычисляет все символы: буквы, цифры, пробелы, знаки препинания и т. д.
Вы можете подумать, что аналогичным образом вы могли бы подсчитать количество символов для всего диапазона ячеек, например: LEN(A2:A6). Но, как это ни странно, просто так это не работает.
Чтобы суммировать символы в нескольких ячейках, вы должны обернуть ДЛСТР в СУММПРОИЗВ — функцию, которая подсчитывает числа из введенных диапазонов. В моем случае диапазон возвращает функция LEN:
=СУММПРОИЗВ(ДЛСТР(A2:A6))
Конечно, вместо этого вы можете использовать функцию SUM. Но SUM в Google Sheets не обрабатывает массивы из других функций. Чтобы это заработало, вам нужно будет добавить еще одну функцию — ArrayFormula:
=Формуламассива(СУММ(ДЛСТР(A2:A6))))
Как считать символы без пробелов в Google Sheets
Как и я отмечено вышефункция Google Sheets LEN подсчитывает каждый символ, который она видит, включая пробелы.
Но что, если по ошибке добавлены лишние пробелы, и вы не хотите учитывать их в результате?
Для таких случаев в Google Sheets есть функция TRIM. Он проверяет текст на наличие начальных, конечных и повторяющихся пробелов между ними. Когда TRIM сочетается с LEN, последний не учитывает все эти нечетные пробелы.
Вот пример. Я добавил пробелы в разных позициях в столбце A. Как видите, Google Sheets LEN считает их все сам по себе:
=ДЛСТР(A2)
Но как только вы интегрируете TRIM, все лишние пробелы игнорируются:
=ДЛСТР(ОТРЕЗАТЬ(A2))
Вы можете пойти дальше и сделать так, чтобы ваша формула не учитывала даже эти одиночные пробелы между словами. Функция ПОДСТАВИТЬ поможет. Хотя его основная цель — заменить один символ другим, есть хитрость, позволяющая полностью сократить пробелы:
=ПОДСТАВИТЬ(текст_для_поиска, поиск_для, замена_с, [occurrence_number])
- text_to_search это диапазон, с которым вы работаете: столбец A или А2 если быть точным.
- ищи должен быть пробелом в двойных кавычках: ” “
- заменить должен содержать пустые двойные кавычки. Если вы собираетесь игнорировать пробелы, вам нужно заменить их буквально ничем (пустой строкой): “”
- вхождение_номер обычно используется для указания экземпляра для замены. Но поскольку я описываю, как считать символы без пробелов, я предлагаю вам опустить этот аргумент, поскольку он необязателен.
Теперь попробуйте собрать все это в Google Sheets LEN, и вы увидите, что пространство не учитывается:
=ДЛСТР(ПОДСТАВИТЬ(A2, ” “, “”))
Google Таблицы: подсчет определенных символов
Тот же самый тандем Google Sheets LEN и SUBSTITUTE используется всякий раз, когда вам нужно подсчитать определенные символы, буквы или цифры.
В моих примерах я собираюсь узнать количество вхождений буквы «s». И на этот раз я начну с готовой формулы:
=ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2, “s”, “”))
Давайте разберем его на части, чтобы понять, как это работает:
- ПОДСТАВИТЬ(A2, “s”, “”) ищет букву «s» в A2 и заменяет все вхождения на «ничего» или пустую строку («»).
- ДЛСТР(ПОДСТАВИТЬ(A2, “s”, “”) определяет количество всех символов, кроме «s» в A2.
- ДЛИН(A2) считает все символы в A2.
- Наконец, вы вычитаете одно из другого.
Разница результатов показывает, сколько «s» в ячейке:
Примечание. Вы можете задаться вопросом, почему B1 говорит, что в A2 только 1, а вы видите 3?
Дело в том, что функция ПОДСТАВИТЬ чувствительна к регистру. Я попросил его взять все экземпляры «s» в нижнем регистре, что он и сделал.
Чтобы он игнорировал регистр текста и обрабатывал буквы как в нижнем, так и в верхнем регистре, вам нужно будет вызвать для помощи еще одну функцию Google Sheets: LOWER.
Это так же просто, как Google Sheets LEN и TRIM, потому что все, что для этого требуется, — это текст:
=НИЖНИЙ(текст)
И все, что он делает, это переводит всю текстовую строку в нижний регистр. Этот трюк — именно то, что вам нужно, чтобы Google Таблицы считали определенные символы независимо от их текстового регистра:
=ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(НИЖНИЙ(A2), “s”, “”))
Кончик. И, как и раньше, чтобы подсчитать общее количество определенных символов в диапазоне, оберните LEN в SUMPRODUCT:
=СУММПРОИЗВ(ДЛСТР(A2:A7)-ДЛСТР(ПОДСТАВИТЬ(НИЖЕ(A2:A7), “s”, “”)))
Подсчет слов в Google Sheets
Когда в ячейках несколько слов, скорее всего, вам понадобится их количество, а не длина строки Google Sheets.
И хотя есть несколько способов сделать это, сегодня я упомяну, как Google Sheets LEN выполняет эту работу.
Помните формула, которую я использовал для подсчета определенных символов в гугл таблицах? Собственно, и здесь он пригодится. Потому что я не собираюсь буквально считать слова. Вместо этого я посчитаю количество пробелов между словами, а затем просто добавлю 1. Посмотрите:
=ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ((A2), ” “, “”))+1
- ДЛИН(A2) подсчитывает количество всех символов в ячейке.
- ДЛСТР(ПОДСТАВИТЬ((A2),” “,””)) удаляет все пробелы из текстовой строки и подсчитывает оставшиеся символы.
- Затем вы вычитаете одно из другого, и вы получаете разницу в количестве пробелов в ячейке.
- Так как слов всегда больше, чем пробелов в предложении на единицу, вы добавляете 1 в конце.
Google Таблицы: подсчет конкретных слов
Наконец, я хотел бы поделиться формулой Google Sheets, которую вы можете использовать для подсчета определенных слов.
Вот у меня есть Песня Черепахи Квази из “Приключений Алисы в Стране Чудес”:
Я хочу знать, сколько раз слово «будет» появляется в каждой строке. Думаю, вы не удивитесь, если я скажу, что нужная мне формула состоит из тех же функций, что и раньше: ДЛСТР, ПОДСТАВИТЬ и МНИЖНИЙ в Google Таблицах:
=(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(НИЖЕ(А2), “будет”, “”)))/ДЛСТР(“будет”)
Формула может показаться пугающей, но я могу заверить вас, что ее легко понять, так что потерпите меня 🙂
- Поскольку для меня не имеет значения регистр текста, я использую НИЖНИЙ(A2) перевести все в нижний регистр.
- Затем идет ПОДСТАВИТЬ(НИЖЕ(A2), “будет”,””))) – он избавляется от всех вхождений «воли», заменяя их пустыми строками («»).
- После этого я вычитаю количество символов без слова will из общей длины строки. Число, которое я получаю, подсчитывает все символы во всех вхождениях слова «будет» в каждой строке.
Таким образом, если «воля» появляется один раз, число равно 4, так как в слове 4 буквы. Если он появляется дважды, это число равно 8 и так далее.
- Наконец, я делю это число на длину одного слова «будет».
Кончик. И снова, если вы хотите получить общее количество всех вхождений слова «будет», просто заключите всю формулу в СУММПРОИЗВ:
=СУММПРОИЗВ((ДЛСТР(A2:A7)-ДЛСТР(ПОДСТАВИТЬ(МЕНЬШЕ(A2:A7), “будет”, “”)))/ДЛСТР(“будет”))
Как видите, все эти случаи подсчета символов решаются одними и теми же шаблонами одних и тех же функций для Google Таблиц: ДЛСТР, ПОДСТАВИТЬ, МНИЖЕ и СУММПРОИЗВ.
Если какие-то формулы все еще смущают вас или вы не знаете, как применить все к вашей конкретной задаче, не стесняйтесь и спросите об этом в разделе комментариев ниже!