Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис и использование функций ДЛСТР и ДЛИНБ в Microsoft Excel.
Описание
Функция ДЛСТР возвращает число символов в текстовой строке.
Функция ДЛИНБ возвращает число байтов, представляющих символы в текстовой строке.
Важно:
-
Эти функции могут быть доступны не на всех языках.
-
Функция ДЛИНБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой двухбайтовой кодировки. В противном случае функция ДЛИНБ работает так же, как функция ДЛСТР, и отсчитывает по одному байту на каждый символ.
К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.
Синтаксис
ДЛСТР(текст)
ДЛИНБ(текст)
Аргументы этой функции описаны ниже.
-
Текст Обязательный. Текст, длину которого требуется узнать. Пробелы считаются символами.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Данные |
Мурманск |
Формула |
=LEN(B1) |
=LEN(B2) |
=LEN(B3) |
Описание |
Длина первой строки |
Длина второй строки |
Длина третьей строки, которая содержит восемь пробелов |
||
Один |
Результат |
11 |
0 |
11 |
Нужна дополнительная помощь?
Если Вам необходимо определить количество символов в тексте ячейки, то Эксель подготовил для Вас отличную функцию. Функция может быть полезна когда Вам нужно каким то образом обработать текстовые данные, к примеру отсортировать их по длине.
Рассмотрим простой пример.
1. Введите в ячейку А1 какой нибудь текст, к примеру «Текстовая строка».
2. В ячейку B1 внесите формулу =ДЛСТР(A1). Готово, в ячейке B1 Вы получите количество символов в тексте в ячейке A1. В моем примере результат равен 16.
Немного о синтаксисе функции:
=ДЛСТР(текст)
где текст — это либо ссылка на ячейку, содержащую текст, либо сама текстовая строка.
Надеюсь это статья Вам помогла. Есть вопросы — задавайте в комментариях.
Skip to content
Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии) для вычисления длины текстовых строк в Excel с пробелами или без них.
Из всех функций Excel она, пожалуй, самая простая и понятная. Название функции легко запомнить, это не что иное, как сокращение «длина строки». Она возвращает длину текстовой строки или длину ячейки.
Другими словами, вы используете её для подсчета всех знаков, включая буквы, числа, специальные символы и все пробелы.
В этом коротком руководстве мы сначала кратко рассмотрим синтаксис, а затем более подробно изучим некоторые полезные примеры для определения длины текста в ваших таблицах Excel.
- Базовые сведения
- Считаем длину одной ячейки
- Определяем общую длину диапазона ячеек
- Как игнорировать начальные и конечные пробелы?
- Как считать длину без учета любых пробелов?
- Количество символов до или после определённого знака.
Синтаксис.
Она подсчитывает и возвращает длину текста. Здесь всего один аргумент, который, естественно, обязателен:
= ДЛСТР(текст)
Где текст — это текстовая строка, для которой вы хотите подсчитать число знаков. Нет ничего проще, правда?
Ниже вы найдете пару простых формул, чтобы получить общее представление о том, как это работает.
=ДЛСТР(123) — возвращает 3, потому что в текстовый аргумент передается 3 цифры .
=ДЛСТР(«яблоко») — возвращает 6, потому что слово яблоко состоит из 6 букв. Как и любая другая формула Excel, она требует заключения текстовых выражений в двойные кавычки, которые не учитываются при подсчёте.
Впрочем, на практике вы, скорее всего, будете указывать ссылки на ячейки, а не записывать какой-то текст в саму формулу.
Например, чтобы получить длину текста в A1, вы должны записать:
=ДЛСТР(A1)
Ниже приведены более содержательные примеры с подробными объяснениями и скриншотами.
На первый взгляд функция ДЛСТР выглядит настолько простой, что не требует дополнительных пояснений. Однако есть несколько полезных приемов, которые могут помочь вам настроить её под ваши конкретные нужды.
Определяем длину ячейки.
Как уже упоминалось, здесь учитываются абсолютно все символы, включая все пробелы — ведущие, конечные и между словами.
Например, чтобы получить длину A2, используем это выражение:
=ДЛСТР(A2)
Как показано на скриншоте ниже, получаем результат 32, включая 23 буквы, 2 цифры, 3 пробела и 1 знак пунктуации.
Чтобы сосчитать длину нескольких ячеек, выберите ту что с формулой и скопируйте ее в другие, например, перетащив маркер заполнения.
Как только она будет скопирована, получим длину для каждой ячейки отдельно.
Примечание. При копировании вниз по столбцу обязательно используйте относительную ссылку, например ДЛСТР(A1), или смешанную ссылку, например ДЛСТР($A1), фиксирующую только столбец, чтобы ваше выражение правильно адаптировалась для нового местоположения.
Считаем длину нескольких ячеек.
Самый очевидный способ сделать это — сложить несколько функций, например:
=ДЛСТР(A2)+ДЛСТР(A3)+ДЛСТР(A4)
Или используйте функцию СУММ для расчета длины текста, возвращаемой из нескольких ячеек:
=СУММ(ДЛСТР(A2); ДЛСТР(A3); ДЛСТР(A4); ДЛСТР(A5))
В любом случае программа ведет подсчет в каждой из указанных ячеек и возвращает общую длину строк в диапазоне:
Этот подход, несомненно, прост для понимания и использования, но это не лучший способ подсчета длины текста в диапазоне, состоящего, скажем, из 100 или 1000 ячеек.
Итак, приведенные выше формулы могут хорошо работать для небольшого диапазона. Чтобы подсчитать общую длину текста в большой области, нам лучше придумать что-нибудь более компактное, например, функцию СУММПРОИЗВ, которая умножает массивы и возвращает сумму этих произведений.
Вот как можно сделать подсчет в диапазоне:
= СУММПРОИЗВ(ДЛСТР( диапазон ))
И ваша реальная формула может выглядеть примерно так:
=СУММПРОИЗВ(ДЛСТР(A2:A5))
Другой способ сделать расчет в диапазоне — использовать ДЛСТР в сочетании с СУММ:
{=СУММ(ДЛСТР(A2:A5))}
В отличие от СУММПРОИЗВ, функция СУММ по умолчанию не работает с массивами, и вам нужно обязательно нажимать Ctrl + Shift + Enter после её ввода, чтобы превратить в формулу массива.
Как показано на следующем скриншоте, СУММ возвращает точно такой же результат:
Как это работает?
Это один из самых простых способов подсчета длины в текстовой строке. Мы вычисляем длину для каждой клетки в указанном диапазоне и возвращаем их в виде массива чисел. Затем СУММПРОИЗВ или СУММ складывают эти числа и возвращают общий итог.
В приведенном выше примере суммируется массив из 4 чисел, которые представляют длины строк в ячейках от В2 до В5:
=СУММПРОИЗВ({32;32;32;39})
Вы помните, что функция Excel ДЛСТР считает абсолютно все символы в каждой ячейке, включая буквы, числа, знаки препинания, специальные символы и все пробелы (ведущие, конечные и пробелы между словами). Но ведь это не всегда нам нужно. Как обойти эту особенность, поговорим далее.
Как подсчитать без начальных и конечных пробелов?
При работе с большими таблицами распространенной проблемой являются начальные или конечные пробелы, т.е. лишние пробелы в начале или в конце различных наименований или заголовков. Вы вряд ли заметите их на листе, но, столкнувшись с ними несколько раз, вы научитесь их опасаться.
Если вы подозреваете, что в ваших данных есть несколько невидимых пробелов, мы с этим легко справимся.
Чтобы получить длину текста без начальных и конечных пробелов, просто вставьте функцию СЖПРОБЕЛЫ (TRIM в английской версии) в ДЛСТР:
=ДЛСТР(СЖПРОБЕЛЫ(A2))
Как посчитать без любых пробелов?
Если ваша цель состоит в том, чтобы посчитать только буквы и цифры без каких-либо пробелов в начале, в конце или между ними, вам понадобится немного более сложное выражение:
=ДЛСТР(ПОДСТАВИТЬ(A2;» «;»»))
Как вы, наверное, знаете, функция ПОДСТАВИТЬ заменяет один текст другим. В приведенной выше формуле вы заменяете пробел (» «) ничем, то есть пустой текстовой строкой («»). И поскольку вы встраиваете ПОДСТАВИТЬ внутрь функции ДЛСТР, подстановка фактически не выполняется в ячейках, она просто указывает вычислить длину строки без пробелов.
Определяем длину текста до или после определённого знака.
Иногда вам может потребоваться узнать длину определенной части текста, а не подсчитывать его общую длину.
Предположим, у вас есть список артикулов различных товаров. И все действительные артикулы содержат ровно 5 знаков в первой группе (до тире). Как нам обнаружить ошибки при вводе? Ага, подсчитав сколько знаков перед первым тире.
Итак, наше выражение выглядит следующим образом:
=ДЛСТР(ЛЕВСИМВ($A2; ПОИСК(«-«; $A2)-1))
А теперь давайте разберем пошагово, чтобы вы могли понять логику работы.
- Вы используете функцию ПОИСК, чтобы вернуть позицию первого дефиса («-») в A2:
ПОИСК(«-«; $A2) - Затем вы применяете функцию ЛЕВСИМВ, чтобы извлечь подстроку определённой длины, начиная с левой стороны. И не забудьте вычесть 1 из результата, потому что вы не хотите включать тире:
ЛЕВСИМВ($A2; ПОИСК(«-«; $A2)-1) - И, наконец, у вас есть функция ДЛСТР, которая возвращает длину этого кусочка текста.
Теперь вы можете пойти дальше и выделить неправильные артикулы, установив простое правило условного форматирования с такой формулой, как =$B2<>5:
Или же вы можете в отдельном столбце указать на неправильные артикулы, вставив приведенную выше формулу в функцию ЕСЛИ :
=ЕСЛИ(ДЛСТР(ЛЕВСИМВ(A2; ПОИСК(«-«;A2)-1))<>5; «Неверно!»; «»)
Как показано на скриншоте ниже, формула идеально определяет недопустимые артикулы на основе длины строки. И вам даже не нужен отдельный столбец:
Аналогичным образом вы можете посчитать, сколько знаков находится после определенной позиции в строке.
Например, в списке имен нужно узнать, сколько букв содержит фамилия. Вот как мы это сделаем:
=ДЛСТР(ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(» «;A2)))
Как это работает:
- Сначала вы определяете позицию пробела (» «) в текстовой строке с помощью функции ПОИСК:
ПОИСК(» «;A2) - Затем подсчитываете, сколько знаков следует за пробелом. Для этого вы вычитаете позицию пробела из общей длины текста:
ДЛСТР(A2)-ПОИСК(» «;A2) - После этого применяем ПРАВСИМВ, чтобы вернуть всё после пробела, то есть фамилию.
- И, наконец, вы используете формулу ДЛСТР, чтобы получить длину фамилии, возвращенной ПРАВСИМВ.
Обратите внимание, что для правильной работы каждая ячейка должна содержать только один пробел, то есть только имя и фамилию, без отчества, заголовков или суффиксов.
Вот как можно использовать ДЛСТР в Excel. В следующей статье мы рассмотрим другие её возможности, и вы узнаете еще несколько полезных формул для подсчета символов в Excel.
[the_ad_group id=»48″]
Подсчет символов в ячейках
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке) .
Если вам нужно подсчитать количество символов в ячейках, функция LENиспользовать — которого подсчитывает букв, чисел, знаков и все пробелы. Например, длина «Находится 98 градусов сегодня, поэтому я буду перейти swimming» (за исключением кавычки) — 42 символов — 31 буквы, числа 2, 8 пробелов, запятую и апострофы 2.
Чтобы использовать функцию, введите = ДЛСТР (ячейку) в строке формул, нажмите клавишу ВВОД на клавиатуре.
Нескольких ячеек: Чтобы применить такую же формулу в несколько ячеек, введите формулу в первую ячейку и затем перетащите маркер заполнения вниз (или через) диапазон ячеек.
Чтобы получить общее количество символов в нескольких ячейках является использование функций сумм вместе с ДЛСТР. В этом примере функция LEN подсчитывается количество символов в каждой ячейке и функция сумм прибавляет счетчиков:
Попробуйте попрактиковаться
Ниже приведены некоторые примеры того, как работает функция ДЛСТР.
Скопируйте приведенную ниже таблицу и вставьте ее в ячейку A1 на листе Excel. Перетащите формулу из ячейки B2 B4, чтобы увидеть длину текста во всех ячейках в столбце A.
Текстовые функции Excel
ФИО, номера банковских карт, адреса клиентов или сотрудников, комментарии и многое другое –все это является строками, с которыми многие сталкиваются, работая с приложением Excel. Поэтому полезно уметь обрабатывать информацию подобного типа. В данной статье будут рассмотрены текстовые функции в Excel, но не все, а те, которые, по мнению office-menu.ru, самые полезные и интересные:
Список всех текстовых функций Вы можете найти на вкладке «Формулы» => выпадающий список «Текстовые»:
Функция ЛЕВСИМВ
Возвращает подстроку из текста в порядке слева направо в заданном количестве символов.
Синтаксис: =ЛЕВСИМВ(текст; [количество_знаков])
- текст – строка либо ссылка на ячейку, содержащую текст, из которого необходимо вернуть подстроку;
- количество_знаков – необязательный аргумент. Целое число, указывающее, какое количество символов необходимо вернуть из текста. По умолчанию принимает значение 1.
Пример использования:
Формула: =ЛЕВСИМВ(«Произвольный текст»;8) – возвращенное значение «Произвол».
Функция ПРАВСИМВ
Данная функция аналогична функции «ЛЕВСИМВ», за исключением того, что знаки возвращаются с конца строки.
Пример использования:
Формула: =ПРАВСИМВ(«произвольный текст»;5) – возвращенное значение «текст».
Функция ДЛСТР
С ее помощью определяется длина строки. В качестве результата возвращается целое число, указывающее количество символов текста.
Синтаксис: =ДЛСТР(текст)
Пример использования:
Функция НАЙТИ
Возвращает число, являющееся вхождением первого символа подстроки, искомого текста. Если текст не найден, то возвращается ошибка «#ЗНАЧ!».
Синтаксис: =НАЙТИ(искомый_текст; текст_для_поиска; [нач_позиция])
- искомый_текст – строка, которую необходимо найти;
- текст_для_поиска – текст, в котором осуществляется поиск первого аргумента;
- нач_позиция – необязательный элемент. Принимает целое число, которое указывает, с какого символа текст_для_поиска необходимо начинать просмотр. По умолчанию принимает значение 1.
Пример использования:
Из отрывка стихотворения великого поэта С.А.Есенина находим вхождение первого символа строки «птица». Поиск осуществляется с начала строки. Если в приведенном примере поиск осуществлялся бы с 40 символа, то функция в результате вернула ошибку, т.к. позиции вхождения не было найдено.
Функция ЗАМЕНИТЬ
Данная функция заменяет часть строки в заданном количестве символов, начиная с указанного по счету символа на новый текст.
Синтаксис: ЗАМЕНИТЬ(старый_текст; начальная_позиция; количество_знаков; новый_текст)
- старый_текст – строка либо ссылка на ячейку, содержащую текст;
- начальная_позиция – порядковый номер символа слева направо, с которого нужно производить замену;
- количество_знаков – количество символов, начиная с начальная_позиция включительно, которые необходимо заменить новым текстом;
- новый_текст – строка, которая подменяет часть старого текста, заданного аргументами начальная_позиция и количество_знаков.
Пример использования:
Здесь в строке, содержащейся в ячейке A1, подменяется слово «старый», которое начинается с 19-го символа и имеет длину 6 символов, на слово «новый».
В случае обработки небольшого количества ячеек такой способ вполне приемлем. Но если обработать необходимо несколько тысяч различных строк, то процесс составления формул станет трудоемким. Поэтому переделаем рассмотренный пример, используя знания по тем функциям, которые уже описаны в начале статьи, а именно:
- Аргумент «начальная_позиция» подменим функцией «НАЙТИ»;
- В место аргумент «количество_знаков» вложим функцию «ДЛСТР».
В результате получим формулу: =ЗАМЕНИТЬ(A1;НАЙТИ(«старый»;A1);ДЛСТР(«старый»);»новый»)
Посмотрите на принтскрин окна функции. Возвращаемые результаты аргументов не поменялись, зато теперь их можно определять динамически, составив формулу один раз.
Функция ПОДСТАВИТЬ
Данная функция заменяет в тексте вхождения указанной подстроки на новый текст, чем схожа с функцией «ЗАМЕНИТЬ», но между ними имеется принципиальное отличие. Если функция «ЗАМЕНИТЬ» меняет текст, указанный посимвольно вручную, то функция «ПОДСТАВИТЬ» автоматически находит вхождения указанной строки и меняет их.
Синтаксис: ПОДСТАВИТЬ(текст; старый_текст; новый_текст; [номер_вхождения])
- текст – строка или ссылка на ячейку, содержащую текст;
- старый_текст – подстрока из первого аргумента, которую необходимо заменить;
- новый_текст – строка для подмены старого текста;
- номер_вхождения – необязательный аргумент. Принимает целое число, указывающее порядковый номер вхождения старый_текст, которое подлежит замене, все остальные вхождения затронуты не будут. Если оставить аргумент пустым, то будут заменены все вхождения.
Пример использования:
Строка в ячейке A1 содержит текст, в котором имеются 2 подстроки «старый». Нам необходимо подставить на место первого вхождения строку «новый». В результате часть текста «…старый-старый…», заменяется на «…новый-старый…».
Если ли бы последний аргумент был опущен, то результатом бы стала строка «строка, содержащая новый-новый текст».
Функция ПСТР
ПСТР возвращает из указанной строки часть текста в заданном количестве символов, начиная с указанного символа.
Синтаксис: ПСТР(текст; начальная_позиция; количество_знаков)
- текст – строка или ссылка на ячейку, содержащую текст;
- начальная_позиция – порядковый номер символа, начиная с которого необходимо вернуть строку;
- количество_знаков – натуральное целое число, указывающее количество символов, которое необходимо вернуть, начиная с позиции начальная_позиция.
Пример использования:
Из текста, находящегося в ячейке A1 необходимо вернуть последние 2 слова, которые имеют общую длину 12 символов. Первый символ возвращаемой фразы имеет порядковый номер 12.
Аргумент количество_знаков может превышать допустимо возможную длину возвращаемых символов. Т.е. если в рассмотренном примере вместо количество_знаков = 12, было бы указано значение 15, то результат не изменился, и функция так же вернула строку «функции ПСТР».
Для удобства использования данной функции ее аргументы можно подменить функциями «НАЙТИ» и «ДЛСТР», как это было сделано в примере с функцией «ЗАМЕНИТЬ».
Функция СЖПРОБЕЛЫ
Данная функция удаляется все лишние пробелы: пробелы по краям и двойные пробелы между словами. После обработки строк функцией остаются только одиночные пробелы между словами.
Синтаксис: =СЖПРОБЕЛЫ(текст)
Пример использования:
=СЖПРОБЕЛЫ( » Текст с лишними пробелами между словами и по краям « )
Результатом выполнения функции будет строка: «Текст с лишними пробелами между словами и по краям» .
Функция СЦЕПИТЬ
С помощью функции «СЦЕПИТЬ» можно объединить несколько строк между собой. Максимальное количество строк для объединения – 255.
Синтаксис: =СЦЕПИТЬ(текст1; [текст2]; …)
Функция должна содержать не менее одного аргумента
Пример использования:
Функция возвратит строку: «Слово1 Слово2».
Не забывайте, что функция самостоятельно не добавляет пробелы между строками, поэтому добавлять их приходится самостоятельно.
Вместо использования данной функции можно применять знак амперсанда «&». Он так же объединяет строки. Например: «=»Слово1″&» «&«Слово2″».
Excel works!
Excel работает за вас
Excel works!
Thanks for Visiting
Как посчитать количество символов в ячейке Excel? Работа с текстом
Для работы с текстом в ячейках в Excel достаточно хороших формул. С помощью комбинаций этих формул можно решить еще больший спектр задач. Начнем с того, как посчитать количество символов в ячейке excel.
1. Как найти количество символов в ячейке Excel?
Для этого используется функция =ДЛСТР(), она возвращает количество символов в ячейке в виде числа. Как она работает видно в примере 1.
В случае если в этой ячейка записана именно формула, то =ДЛСТР() возвращает именно длину результата формулы. Пример 2.
2. Как обрезать текст слева или справа?
Для того, чтобы обрезать текст по количеству символов слева или справа используются функции =ЛЕВСИМВ() и =ПРАВСИМВ(), в скобках указываете ячейку с текстом, точка с запятой, количество символов для обреза.
Но их с успехом может заменить функция =ПСТР() . Она оставляет количество символов в заданном диапазоне, смотрите пример 4. Для замены лев- и правсимв, используйте =ПСТР() с начальной позицией 1, а с конечной позицией = длине строки. Пример 6.
3. Как посчитать количество определенных символов в строке?
Специального решения в предустановленном Excel нет, но решается все просто через логичную формулу. Т.е. для начала нам нужно посчитать длину строки в ячейке, а затем вычесть из него длину строки без нужных нам символов. Пример 7.
Нам нужно подсчитать кол-во точек в заданной фразе. Первая часть формулы, я думаю, понятна, во второй части формулы применяется функция =ПОДСТАВИТЬ(), где вместо точек записываются «», т.е. пусто. Поэтому, как мы говорили ранее, нам выдает правильно количество точек в этой ячейке.
4. Небольшая хитрость. Как посчитать количество слов в строке?
Чтобы подсчитать количество слов, мы предположим, что количество слов = количеству пробел +1. Запишем формулу из примера 7 с нужными изменениями. См. пример 8.
Не получилось? Правильно, потому что в самом начале фразы у нас стоит многоточие, а это не слово. Поэтому формулу необходимо немного изменить. Как? Догатайтесь сами 😉 А в примере я оставлю все как есть.
ШКОЛА ПРОГРАММИРОВАНИЯ
Сообщение об ошибке
Работа со строками в Excel. Текстовые функции Excel
Часто в Excel приходится тем или иным образом обрабатывать текстовые строки. Вручную такие операции проделывать очень сложно когда кол-во строк составляет не одну сотню. Для удобства в Excel реализован не плохой набор функций для работы со строковым набором данных. В этой статье я коротко опишу необходимые функции для работы со строками категории «Текстовые» и некоторые рассмотрим на примерах.
Функции категории «Текстовые»
Итак, рассмотрим основные и полезные функции категории «Текстовые», с остальными можно ознакомиться самостоятельно.
- БАТТЕКСТ (Значение) – функция преобразующая число в текстовый тип;
- ДЛСТР (Значение) – вспомогательная функция, очень полезна при работе со строками. Возвращает длину строки, т.е. кол-во символов содержащихся в строке;
- ЗАМЕНИТЬ (Старый текст, Начальная позиция, число знаков, новый текст) – заменяет указанное кол-во знаков с определенной позиции в старом тексте на новый;
- ЗНАЧЕН (Текст) – преобразует текст в число;
- ЛЕВСИМВ (Строка, Кол-во знаков) – очень полезная функция, возвращает указанное кол-во символов, начиная с первого символа;
- ПРАВСИМВ (Строка, Кол-во знаков) – аналог функции ЛЕВСИМВ, с той лишь разницей, что возврат символов с последнего символа строки;
- НАЙТИ (текст для поиска, текст в котором ищем, начальная позиция) – функция возвращает позицию, с которой начинается вхождение искомого текста. Регистр символов учитывается. Если необходимо не различать регистр символов, воспользуйтесь функцией ПОИСК. Возвращается позиция только первого вхождения в строке!
- ПОДСТАВИТЬ (текст, старый текст, новый текст, позиция) – интересная функция, на первый взгляд похожа на функцию ЗАМЕНИТЬ, но функция ПОДСТАВИТЬ способна заменить на новую подстроку все вхождения в строке, если опущен аргумент «позиция»;
- ПСТР (Текст, Начальная позиция, Кол-во знаков) – функция похожа на ЛЕВСИМВ, но способна возвратить символы с указанной позиции:
- СЦЕПИТЬ (Текст1, Текст 2 …. Текст 30) – функция позволяет соединить до 30-ти строк. Так же, можно воспользоваться символом «&», выглядеть будет так «=”Текст1” & ”Текст2” & ”Текст3”»;
Это в основном часто используемые функции при работе со строками. Теперь рассмотрим пару примеров, которые продемонстрируют работу некоторых функций.
Пример 1
Дан набор строк:
Необходимо из этих строк извлечь даты, номера накладных, а так же, добавить поле месяц для фильтрации строк по месяцам.
Извлечем в столбец В номера накладных. Для этого найдем так называемый ключевой символ или слово. В нашем примере видно, что перед каждым номером накладной стоит «№», а длина номера накладной 6 символов. Воспользуемся функциями НАЙТИ и ПСТР. Пишем в ячейку B2 следующую формулу :
= ПСТР (A2; НАЙТИ («№»;A2)+1;6)
Разберем формулу. Из строки А2 с позиции следующей после найденного знака «№», мы извлекаем 6 символов номера.
Теперь извлечем дату. Тут все просто. Дата расположена в конце строки и занимает 8 символов. Формула для С2 следующая:
= ПРАВСИМВ (A2;8)
но извлеченная дата у нас будет строкой, чтоб преобразовать ее в дату необходимо после извлечения, текст перевести в число:
= ЗНАЧЕН ( ПРАВСИМВ (A2;8))
а затем, задать формат отображения в ячейке, как это сделать было описано в статье «Формат данных в Excel».
Ну и последнее, для удобства дальнейшей фильтрации строк, введем столбец месяц, который мы получим из даты. Только для создания месяца нам необходимо откинуть день и заменить его на «01». Формула для D2:
= ЗНАЧЕН ( СЦЕПИТЬ («01»; ПРАВСИМВ (A2;6))) или = ЗНАЧЕН («01″& ПРАВСИМВ (A2;6))
Задайте формат ячеке «ММММ ГГГГ». Результат:
Пример 2
В строке «Пример работы со строками в Excel» необходимо все пробелы заменить на знак «_», так же перед словом «Excel» добавить «MS».
Формула будет следующая:
=ПОДСТАВИТЬ(ЗАМЕНИТЬ(A1;ПОИСК(«excel»;A1);0;»MS «);» «;»_»)
Для того, чтоб понять данную формулу, разбейте ее на три столбца. Начните с ПОИСК, последней будет ПОДСТАВИТЬ.
Все. Если есть вопросы, задавайте, не стесняйтесь
Количество символов в ячейке Excel: формула подсчета и функция
При работе с таблицами Excel в некоторых случаях пользователю нужно определить количество символов в определенной ячейке. Если содержимое ячейки незначительно, то это без особых усилий можно сделать вручную. Но как быть, если символов достаточно много или, скажем, содержимое ячейки меняется в зависимости от какого-либо фактора или действия в таблице.
На самом деле выполнить поставленную задачу достаточно просто, ведь в Эксель предусмотрена функция под названием “ДЛСТР”, которая применяется именно в таких случаях.
Количество символов в одной ячейке
Ниже приведен алгоритм действий для использования функции “ДЛСТР”:
- Становимся в ту ячейку, куда планируем вставить функцию, после чего щелкаем по кнопке “Вставить функцию” (с левой стороны от строки формул).
- Откроется окно Мастера функций. Кликнув по текущей категории выбираем пункт “Текстовые”.
- В предложенном перечне операторов выбираем “ДЛСТР” и жмем кнопку OK.
- На экране отобразится окно аргументов функции. На самом деле у данного оператора всего одно поле для заполнения, в котором нужно указать координаты ячейки, количество символов в которой нужно посчитать. Причем указать можно только адрес конкретной ячейки, ссылки на несколько ячеек или диапазон элементов оператором не поддерживаются. Прописать координаты в поле аргумента можно вручную. Также выбрать нужную ячейку можно, щелкнув левой кнопкой мыши по ней, предварительно кликнув по области ввода информации. После того, как значение аргумента заполнено, кликаем OK.
- Результат в виде количества символов в выбранной ячейке (в аргументах функции) сразу же отобразится на экране. А готовая формула функции отобразится, соответственно, в строке формул.
Количество знаков в столбце или строке
Как и многие другие действия, подсчет количества символов в столбце или строке можно автоматизировать, и вовсе не обязательно добавлять и настраивать аргументы функции для каждой ячейки вручную. В качестве примера мы выполним поставленную задачу для столбца. Для строки действия аналогичны с соответствующими корректировками:
- Чтобы растянуть результат на другие строки столбца наводим указатель мыши на правый нижний угол ячейки с функцией “ДЛСТР”, как только он сменит вид на небольшой плюсик, зажав левую кнопку мыши тянем его вниз до той строки, для которой мы хотим получить аналогичный результат.
- Как мы можем заметить, благодаря этому нехитрому действию нам удалось в считанные секунды получить данные по количеству символов для каждой ячейки выбранного столбца.
Ранее мы упоминали, что в качестве аргумента функции “ДЛСТР” можно указать только адрес одной конкретной ячейки. Поэтому, чтобы определить суммарное количество знаков во всех ячейках столбца нужно воспользоваться одним из способов подсчета суммы значений. Подробнее ознакомиться со всеми методами можно в нашей статье – “Как посчитать в Экселе сумму столбца”.
Давайте к примеру, воспользуемся одним из способов:
- Выделяем ячейки столбца. Далее нажимаем кнопку “Сумма” в разделе инструментов “Редактирование” (вкладка “Главная”).
- Результат в виде суммарного количества символов во всех ячейках столбца отобразится в ячейке сразу под выделенным диапазоном.
Определение количества знаков в разбросанных ячейках
Рассмотренный выше способ удобен и применим только, когда речь идет про ячейки одного столбца или строки. Но что делать, когда нужно определить количество знаков в ячейках, разбросанных по документу и находящихся в разных столбцах и ячейках.
В этом случае нас опять выручит суммирование значений ячеек. Вот, что нужно сделать:
-
- Отмечаем ячейку, куда планируем вставить формулу. Далее ставим знак “равно” (“=”) и через знак плюса добавляем функции “ДЛСТР” для каждой ячейки, которая должна участвовать в финальном расчете. Например, нам нужно определить итоговое количество знаков в ячейках A2, A5, A10, B3, B10, C8 и C12.
Следовательно, финальная формула должна выглядеть следующим образом:
=ДЛСТР(A2)+ДЛСТР(A5)+ДЛСТР(A10)+ДЛСТР(B3)+ДЛСТР(B10)+ДЛСТР(C8)+ДЛСТР(C12). - После того, как формула набрана, нажимаем клавишу Enter и получаем готовый результат в выбранной ячейке.
- Отмечаем ячейку, куда планируем вставить формулу. Далее ставим знак “равно” (“=”) и через знак плюса добавляем функции “ДЛСТР” для каждой ячейки, которая должна участвовать в финальном расчете. Например, нам нужно определить итоговое количество знаков в ячейках A2, A5, A10, B3, B10, C8 и C12.
Заключение
Некоторые пользователи, столкнувшись с такой задачей, как подсчет количества знаков в определенной ячейке или диапазоне ячеек в 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 символов / первое слово
Нехитрая комбинация функций ПРАВСИМВ, ПОИСК и ДЛСТР позволяет удалить из ячейки первое слово.
Механика проста:
- вычисляем позицию первого пробела функцией ПОИСК,
- вычитаем из длины строки (ДЛСТР) это число
- Извлекаем функцией ПРАВСИМВ полученную разницу из исходной строки
Подробнее пример рассмотрен в статье про функцию ПРАВСИМВ.
Если же количество символов уже известно заранее, формула еще проще – нужны только ДЛСТР и ПРАВСИМВ:
=ПРАВСИМВ(A1;ДЛСТР(A1)-4)
Подробнее можно почитать тут: удалить первые N символов в ячейке.
Пример 5 – последние символы ячейки
Как бы ни звучало очевидно, позиция последнего символа в строке равна ее длине в символах. А поэтому, зная длину строки, можно, например:
- удалить последние символы в ячейке
- извлечь последние символы из ячеек
А ниже примеры, как заменить последний символ в ней, взяв на 1 символ меньше с помощью ЛЕВСИМВ, и конкатенации с нужным текстом через амперсанд:
=ЛЕВСИМВ(A1;ДЛСТР(A1)-1)&"Текст вместо последнего символа"
Или с помощью функции ЗАМЕНИТЬ, которая на вход возьмет длину строки как позицию заменяемого символа:
=ЗАМЕНИТЬ(A1;ДЛСТР(A1);1;"Текст вместо последнего символа")
Пример 6 – в формуле массива
Как посчитать все символы в диапазоне ячеек или столбце?
Здесь поможет формула массива на основе комбинации функции ДЛСТР и функции СУММ. Первая создаст массив значений длины каждой из ячеек диапазона, а вторая просуммирует эти значения:
={СУММ(ДЛСТР(ДИАПАЗОН))}
Аналогичным способом функциями МАКС и МИН можно посчитать длины самой длинной и самой короткой строк в диапазоне.
Фигурные скобки вводить не нужно, они появятся сами при вводе формулы массива сочетанием клавиш Ctrl+Shift+Enter (вместо обычного Enter).
Пример 7 – извлечь цифры
Подробно процесс рассмотрен в разделе соответствующей статьи – как извлечь цифры из ячеек Excel формулой.
Понравилась статья? Поддержите ее автора!
Набор инструментов !SEMTools поможет решить множество задач без ввода сложных формул и сэкономит ваше время. И вам полезно, и автору приятно!