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.
Описание
Функция ПСТР возвращает заданное число знаков из текстовой строки, начиная с указанной позиции.
Функция ПСТРБ возвращает определенное число знаков из текстовой строки, начиная с указанной позиции, на основе заданного числа байтов.
Важно:
-
Эти функции могут быть доступны не на всех языках.
-
Функция ПСТР предназначена для языков с однобайтовой кодировкой, а ПСТРБ — для языков с двухбайтовой кодировкой. Язык по умолчанию, заданный на компьютере, влияет на возвращаемое значение следующим образом.
-
Функция ПСТР всегда считает каждый символ (одно- или двухбайтовый) за один вне зависимости от языка по умолчанию.
-
Функция ПСТРБ считает каждый двухбайтовый символ за два, если включена поддержка ввода на языке с двухбайтовой кодировкой, а затем этот язык назначен языком по умолчанию. В противном случае функция ПСТРБ считает каждый символ за один.
К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.
Синтаксис
ПСТР(текст;начальная_позиция;число_знаков)
ПСТРБ(текст;начальная_позиция;число_байтов)
Аргументы функций ПСТР и ПСТРБ описаны ниже.
-
Текст Обязательный. Текстовая строка, содержащая символы, которые требуется извлечь.
-
Начальная_позиция Обязательный. Позиция первого знака, извлекаемого из текста. Первый знак в тексте имеет начальную позицию 1 и так далее.
-
Если start_num больше, чем длина текста, то для ПМС и ПБ возвращается «» (пустой текст).
-
Если start_num меньше, чем длина текста, но start_num плюс num_chars превышает длину текста, то mid/MIDB возвращает символы до конца текста.
-
Если start_num меньше 1, то mid/MIDB возвращает #VALUE! значение ошибки #ЗНАЧ!.
-
-
Число_знаков Требуется для mid. Указывает, сколько знаков должна вернуть функция ПСТР.
-
Если значение «число_знаков» отрицательно, функция ПСТР возвращает значение ошибки #ЗНАЧ!.
-
-
Число_байтов Требуется для midB. Указывает, сколько знаков должна вернуть функция ПСТРБ (в пересчете на байты).
-
Если значение «число_байтов» отрицательно, функция ПСТРБ возвращает значение ошибки #ЗНАЧ!.
-
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
|
Данные |
||
|
Поток воды |
||
|
Формула |
Описание |
Результат |
|
=ПСТР(A2;1;5) |
Возвращает пять знаков из строки в ячейке А2, начиная с первого знака. |
Поток |
|
=ПСТР(A2;7;20) |
Возвращает двадцать знаков из строки в ячейке А2, начиная с седьмого знака. Так как количество возвращаемых знаков (20) больше длины строки (10), возвращаются все знаки, начиная с седьмого. Пустые символы (пробелы) не добавляются в конец строки. |
воды |
|
=ПСТР(A2;20;5) |
Так как начальная позиция больше, чем длина строки (10), возвращается пустая строка. |
Нужна дополнительная помощь?
Для удобства работы с текстом в Excel существуют текстовые функции. Они облегчают обработку сразу сотен строк. Рассмотрим некоторые из них на примерах.
Примеры функции ТЕКСТ в Excel
Преобразует числа в текст. Синтаксис: значение (числовое или ссылка на ячейку с формулой, дающей в результате число); формат (для отображения числа в виде текста).
Самая полезная возможность функции ТЕКСТ – форматирование числовых данных для объединения с текстовыми данными. Без использования функции Excel «не понимает», как показывать числа, и преобразует их в базовый формат.
Покажем на примере. Допустим, нужно объединить текст в строках и числовые значения:
Использование амперсанда без функции ТЕКСТ дает «неадекватный» результат:
Excel вернул порядковый номер для даты и общий формат вместо денежного. Чтобы избежать подобного результата, применяется функция ТЕКСТ. Она форматирует значения по заданию пользователя.
Формула «для даты» теперь выглядит так:
Второй аргумент функции – формат. Где брать строку формата? Щелкаем правой кнопкой мыши по ячейке со значением. Нажимаем «Формат ячеек». В открывшемся окне выбираем «все форматы». Копируем нужный в строке «Тип». Вставляем скопированное значение в формулу.
Приведем еще пример, где может быть полезна данная функция. Добавим нули в начале числа. Если ввести вручную, Excel их удалит. Поэтому введем формулу:
Если нужно вернуть прежние числовые значения (без нулей), то используем оператор «—»:
Обратите внимание, что значения теперь отображаются в числовом формате.
Функция разделения текста в Excel
Отдельные текстовые функции и их комбинации позволяют распределить слова из одной ячейки в отдельные ячейки:
- ЛЕВСИМВ (текст; кол-во знаков) – отображает заданное число знаков с начала ячейки;
- ПРАВСИМВ (текст; кол-во знаков) – возвращает заданное количество знаков с конца ячейки;
- ПОИСК (искомый текст; диапазон для поиска; начальная позиция) – показывает позицию первого появления искомого знака или строки при просмотре слева направо
При разделении текста в строке учитывается положение каждого знака. Пробелы показывают начало или конец искомого имени.
Распределим с помощью функций имя, фамилию и отчество в разные столбцы.
В первой строке есть только имя и фамилия, разделенные пробелом. Формула для извлечения имени: =ЛЕВСИМВ(A2;ПОИСК(» «;A2;1)). Для определения второго аргумента функции ЛЕВСИМВ – количества знаков – используется функция ПОИСК. Она находит пробел в ячейке А2, начиная слева.
Формула для извлечения фамилии:
С помощью функции ПОИСК Excel определяет количество знаков для функции ПРАВСИМВ. Функция ДЛСТР «считает» общую длину текста. Затем отнимается количество знаков до первого пробела (найденное ПОИСКом).
Вторая строка содержит имя, отчество и фамилию. Для имени используем такую же формулу:
Формула для извлечения фамилии несколько иная: Это пять знаков справа. Вложенные функции ПОИСК ищут второй и третий пробелы в строке. ПОИСК(» «;A3;1) находит первый пробел слева (перед отчеством). К найденному результату добавляем единицу (+1). Получаем ту позицию, с которой будем искать второй пробел.
Часть формулы – ПОИСК(» «;A3;ПОИСК(» «;A3;1)+1) – находит второй пробел. Это будет конечная позиция отчества.
Далее из общей длины строки отнимается количество знаков с начала строки до второго пробела. Результат – число символов справа, которые нужно вернуть.
Формула «для отчества» строится по тем же принципам:
Функция объединения текста в Excel
Для объединения значений из нескольких ячеек в одну строку используется оператор амперсанд (&) или функция СЦЕПИТЬ.
Например, значения расположены в разных столбцах (ячейках):
Ставим курсор в ячейку, где будут находиться объединенные три значения. Вводим равно. Выбираем первую ячейку с текстом и нажимаем на клавиатуре &. Затем – знак пробела, заключенный в кавычки (“ “). Снова — &. И так последовательно соединяем ячейки с текстом и пробелы.
Получаем в одной ячейке объединенные значения:
Использование функции СЦЕПИТЬ:
С помощью кавычек в формуле можно добавить в конечное выражение любой знак или текст.
Функция ПОИСК текста в Excel
Функция ПОИСК возвращает начальную позицию искомого текста (без учета регистра). Например:
Функция ПОИСК вернула позицию 10, т.к. слово «Захар» начинается с десятого символа в строке. Где это может пригодиться?
Функция ПОИСК определяет положение знака в текстовой строке. А функция ПСТР возвращает текстовые значения (см. пример выше). Либо можно заменить найденный текст посредством функции ЗАМЕНИТЬ.
Скачать пример функции для работы с текстом в Excel
Читайте так же: как перевести число и сумму прописью.
Синтаксис функции ПОИСК:
- «искомый текст» — что нужно найти;
- «просматриваемый текст» — где искать;
- «начальная позиция» — с какой позиции начинать искать (по умолчанию – 1).
Если нужно учитывать регистр, используется функция НАЙТИ.
Skip to content
В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках.
В нашем предыдущем руководстве была представлена функция ДЛСТР , которая позволяет посчитать количество символов в ячейке Excel.
Функция ДЛСТР (LEN в английской версии) полезна сама по себе, а в связи с другими функциями, такими как СУММ, СУММПРОИЗВ и ПОДСТАВИТЬ, она может решать и более сложные задачи. Далее в этом руководстве мы более подробно рассмотрим несколько основных и более сложных выражений для подсчета количества знаков в Excel.
- Как посчитать все символы в диапазоне
- Как подсчитать определенные знаки в ячейке
- Подсчет определенных букв в ячейке без учета регистра
- Как посчитать вхождения текста или подстроки в ячейку?
- Сколько раз встречается символ в диапазоне?
- Подсчет определенных букв в диапазоне без учета регистра.
Как посчитать все символы в диапазоне
Когда дело доходит до подсчета общего количества знаков в нескольких клетках таблицы, сразу приходит на ум решение сделать это для каждой из них, а затем просто сложить эти числа:
=ДЛСТР(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, из исходного текста, расположенного в B2:
ПОДСТАВИТЬ(B2; $C$1;»») - Затем функция ДЛСТР вычисляет длину текстовой строки без указанного слова.
В этом примере ДЛСТР(ПОДСТАВИТЬ(B2; $C$1;»»)) возвращает длину текста в B2 после удаления всех букв и цифр, содержащихся во всех вхождениях «А2». - После этого указанное выше число вычитается из общей длины исходной текстовой строки:
ДЛСТР(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, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
Обзор способов, позволяющих быстро обрезать значения ячеек и удалить лишний текст. Обрезка текста формулами слева и справа, быстрая обрезка строк надстройкой VBA, удаление лишнего текста до определенного символа, разбиение текста по столбцам.
Как обрезать символы при помощи формул?
Как оставить заданное количество символов в начале строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ЛЕВСИМВ», которая возвращает заданное количество знаков с начала строки.
Как удалить заданное количество знаков в начале строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ПРАВСИМВ» и «ДЛСТР», которая определяет длину строки, то есть количество символов в значении указанной ячейки.
Как оставить заданное количество символов в конце строки, остальные удалить?
Ввести в ячейку стандартную текстовую функцию Excel «ПРАВСИМВ», которая возвращает заданное количество знаков с конца строки.
Как удалить заданное количество знаков в конце строки, остальные оставить?
Ввести в ячейку комбинацию стандартных функций Excel «ЛЕВСИМВ» и «ДЛСТР»
Как видно из приведенных примеров, оставить текстовые строки заданной длины достаточно просто при помощи формулы в одно действие. Чтобы обрезать определенное количество знаков с начала или с конца строки, необходимо вносить в ячейки достаточно громоздкие формулы, что достаточно неудобно.
Как обрезать символы без ввода формул?
Надстройка для быстрой обрезки текста
Все описанные выше манипуляции с текстовыми значениями можно производить и без использования формул, что гораздо быстрее. Для этого нужно лишь вызвать диалоговое окно надстройки и задать в нем диапазон ячеек, подходящую функцию и количество знаков, которые необходимо удалить либо оставить.
1. обрезать заданное количество символов слева;
2. обрезать заданное количество символов справа;
3. обрезать значения ячеек до первого попавшегося заданного символа (сочетания символов);
4. обрезать значения ячеек до последнего попавшегося символа (сочетания символов).
В надстройку зашиты функции, аналогичные тем, которые описаны выше, что сокращает время на:
— выделение диапазона ячеек.
В программе предусмотрена возможность вместо выделения диапазона ячеек выделять целиком строки/столбцы. Программа автоматически сокращает выделенный диапазон до границы используемого диапазона, при этом на листе не должно быть отфильтрованных строк.
Разбиение текста по столбцам
Для обрезания значений ячеек можно использовать «Текст по столбцам». Это стандартное средство Excel не удаляет и не обрезает символы, а распределяет содержимое ячеек по разным столбцам при помощи мастера текстов. Кнопка вызова диалогового окна находится на вкладке «Данные» в группе кнопок «Работа с данными». Этот инструмент можно использовать в двух режимах работы, разделять исходные данные при помощи разделителей либо при помощи настраиваемых полей, когда можно вручную указать границы раздела значений.
Шаг1. Выбор формата исходных данных.
Шаг2. Установка нужной ширины полей.
Количество полей при этом не ограничено.
Шаг 3. Просмотр и получение результатов.
В результате таких манипуляций исходные значения нарезаются в соответствии с установленными полями и разносятся по различным столбцам.
Excel: Ограничение ввода (часть 1)
Предположим, что Вам надо вводить в определенные ячейки значения строго ограниченного размера. Например, ИНН, который должен состоять из 10 символов.
Но зачастую, при торопливой работе в подобные данные закрадываются ошибки в форме большего, или меньшего количества символов. Поэтому для определённых ячеек можно ограничить количество вводимых символов определенным числом.
1. Выделяем ячейки ( можно целиком строку(и), столбец(ы))
2. В Меню выбираем «Данные – Проверка».
3. В появившемся окне
в графе «Тип данных» выбираем — «длина текста»,
в графе «Значение» — «равно»,
в графе «Длина» указываем – «10» (для ИНН).
4. Во вкладке «Сообщение об ошибке» можно задать индивидуальный заголовок и сообщение об этой ошибке. Например:
5. После ввода текста сообщения нажимаем ОК.
Теперь при попытке ввести в указанные вами ячейки значения не равные по длине 10 символам, появится сообщение об ошибке.
Причем ввести данные другого размера не получится.
Если ограничение по длине не принципиально, то во вкладке «сообщение об ошибке» выберите пункт «предупреждение», а не «остановка» как по умолчанию.
Теперь сообщение об ошибке будет появляться, но вы получите возможность вписать значения другого размера.
Как добавить ограничение на количество символов в ячейках в Excel
Лист Excel не всегда используется для обработки данных. Расположение строк и столбцов — это удобный способ представления и управления большим объемом информации, а функции Excel позволяют использовать электронную таблицу в качестве инструмента сбора данных.
Excel предлагает некоторые функции, которые позволяют вам использовать его как форму, которую могут заполнять другие пользователи, но если вам нужно ввести инструкции по заполнению формы в электронную таблицу, это будет беспорядочно.
Более простой способ убедиться, что вы получаете правильные данные, — это добавить лимиты и ограничения к ячейке. Любые данные или значения, выходящие за пределы лимита, будут отклонены.
Предел символов для ячеек в Excel
Вы можете установить ограничение на количество символов для ячеек в Excel. Это ограничение работает таким образом, что введенное значение должно содержать минимальное количество символов или не длиннее определенного количества символов.
Это полезно, когда пользователь должен ввести номер телефона, почтовый индекс или что-то подобное.
- Откройте файл Excel вы хотите добавить ограничения на количество символов.
- Выберите ячейки / столбцы / строки к которому будет добавлен лимит.
- Перейти к Вкладка «Данные».
- Нажмите «Проверка данных». на панели инструментов Data Tools.
- Перейти к Вкладка «Настройки».
- Открой Раскрывающийся список «Разрешить» и выберите «Длина текста».
- Открой Раскрывающийся список «Данные» и выберите ограничивающие критерии. Чтобы ограничить его определенным числом, выберите «Меньше или равно».
- Чтобы установить максимальное значение, введите значение в поле Максимум.
- Щелкните ОК.
Добавить всплывающую подсказку для ограничения количества символов
Пользователь не сможет определить, есть ли в ячейке ограничение на количество символов, поэтому добавление всплывающей подсказки поможет им.
- Выберите ячейки / столбцы / строки с ограничением символов.
- Перейти к Вкладка «Данные».
- Нажмите Проверка достоверности данных.
- Выберите Вкладка «Входное сообщение».
- Включите Опция «Показывать входное сообщение, когда ячейка выбрана».
- В поле заголовка введите тему для всплывающей подсказки.
- Введите сообщениее в ‘Входное сообщение’ поле.
- Нажмите ХОРОШО.
Добавить сообщение об ошибке
Когда пользователь вводит значение, которое не соответствует ограничениям на количество символов в ячейке, он увидит ошибку. К сожалению, сообщение об ошибке носит общий характер и не сообщает пользователю, почему значение не было исключено. Вы можете изменить его, чтобы пользователь знал, что не так.
- Выберите ячейку / столбец / строки с ограничением символов.
- Перейти к Вкладка данных на ленте.
- Нажмите Проверка достоверности данных.
- Перейти к Окно сообщения об ошибке.
- Включите Параметр «Показывать предупреждение об ошибке после ввода неверных данных».
- Введите заголовок оповещения в ‘Заголовок ».
- Введите сообщение который сообщает пользователю, какие данные вводить в Поле сообщения об ошибке.
Вывод
Вы можете добавить верхний или нижний предел символов для ячеек или ввести точное количество символов, которое пользователь должен ввести, чтобы значение было принято. Просмотрите различные варианты и добавьте тип ограничения данных, который вам нужен для ячейки, столбца или строки.
Содержание
- Синтаксис.
- Определяем длину ячейки.
- Считаем длину нескольких ячеек.
- ЛЕВСИМВ и ПРАВСИМВ
- Как подсчитать без начальных и конечных пробелов?
- Примеры применения ДЛСТР
- Пример 1 — посчитать слова
- Пример 2 — посчитать встречаемость фрагмента в тексте
- Есть ли в ячейке лишние пробелы
- Сколько раз встречается символ или слово в тексте
- Пример 3 — извлечь или удалить последнее слово
- Пример 4 — удалить первые N символов / первое слово
- Пример 5 — замена последнего символа в ячейке
- ПРОПНАЧ
- СЖПРОБЕЛЫ
- Как посчитать без любых пробелов?
- СТРОЧН
- ПОВТОР
- Форматирование
- ПСТР
- ПРОПИСН
- СОВПАД
- Синтаксис
Синтаксис.
Подсчитывает и возвращает длину текста. Есть только один аргумент, который, разумеется, обязателен:
= DLSTR (текст)
Где текст — это текстовая строка, для которой вы хотите подсчитать количество символов. Нет ничего проще, правда?
Ниже вы найдете несколько простых формул, чтобы получить общее представление о том, как это работает.
= DLSTR (123) — возвращает 3, поскольку в текстовом аргументе переданы 3 цифры .
= DLSTR («яблоко») — возвращает 6, потому что слово яблоко состоит из 6 букв. Как и любая другая формула Excel, она требует, чтобы текстовые выражения были заключены в кавычки, которые не учитываются при вычислении.
Однако на практике вы, скорее всего, будете указывать ссылки на ячейки, а не писать текст в самой формуле.
Например, чтобы получить длину текста в A1, вы должны написать:
= DLSTR (A1)
Ниже приведены более информативные примеры с подробными пояснениями и скриншотами.
На первый взгляд функция DLSTR кажется настолько простой, что не требует дополнительных пояснений. Однако есть несколько полезных приемов, которые помогут вам настроить его под свои нужды.
Определяем длину ячейки.
Как уже было сказано, здесь учитываются абсолютно все символы, включая все пробелы: начальные, конечные и между словами.
Например, чтобы получить длину A2, мы используем это выражение:
= ДЛСТР (A2)
Как показано на скриншоте ниже, результат равен 32, включая 23 буквы, 2 цифры, 3 пробела и 1 знак препинания.

Чтобы подсчитать длину нескольких ячеек, выберите ячейку с формулой и скопируйте ее в другие, например, перетащив маркер заполнения.
После копирования мы получаем длину каждой ячейки отдельно.
Примечание. При копировании столбца обязательно используйте относительную ссылку, например DLSTR (A1), или смешанную ссылку, например DLSTR ($ A1), которая захватывает только столбец, чтобы выражение правильно соответствовало новой позиции.
Считаем длину нескольких ячеек.
Самый очевидный способ сделать это — добавить больше функций, например:
= DLSTR (A2) + DLSTR (A3) + DLSTR (A4)
Или используйте функцию СУММ для вычисления длины текста, возвращаемого из нескольких ячеек:
= СУММ (DLSTR (A2), DLSTR (A3), DLSTR (A4), DLSTR (A5))
В каждом случае программа считает в каждой из указанных ячеек и возвращает общую длину строк в диапазоне:

Этот подход, несомненно, прост для понимания и использования, но это не лучший способ рассчитать длину текста в диапазоне, например, 100 или 1000 ячеек.
Таким образом, приведенные выше формулы могут хорошо работать для небольшого диапазона. Чтобы вычислить общую длину текста на большой площади, нам лучше найти что-нибудь более компактное, например функцию СУММПРОИЗВ, которая умножает массивы и возвращает сумму этих продуктов.
Вот как сделать подсчет в диапазоне:
= СУММПРОИЗВ (DLSTR (интервал))
И ваша настоящая формула может выглядеть так:
= СУММПРОИЗВ (DLSTR (A2: A5))

Другой способ выполнить вычисление по диапазону — использовать DLSTR в сочетании с SUM:
{= СУММ (DLSTR (A2: A5))}
В отличие от СУММПРОИЗВ, функция СУММ не работает с массивами по умолчанию, и вы должны обязательно нажать Ctrl + Shift + Enter после ввода, чтобы преобразовать его в формулу массива.
Как показано на следующем снимке экрана, СУММ возвращает точно такой же результат:

Как это работает?
Это один из самых простых способов рассчитать длину текстовой строки. Мы вычисляем длину каждой ячейки в указанном диапазоне и возвращаем их в виде массива чисел. Затем СУММПРОИЗВ или СУММ складывает эти числа и возвращает общую сумму.
В приведенном выше примере суммирован массив из 4 чисел, представляющих длины строк в ячейках от B2 до B5:
= СУММПРОИЗВ ({32; 32; 32; 39})
Помните, что функция DLSTR в Excel считает абсолютно все символы в каждой ячейке, включая буквы, числа, знаки препинания, специальные символы и все пробелы (начальные, конечные и пробелы между словами). Но нам это не всегда нужно. О том, как обойти эту особенность, поговорим дальше.
ЛЕВСИМВ и ПРАВСИМВ
Текстовые функции LEFT и RIGHT возвращают указанное количество символов, начиная с начала или конца строки. Пробел считается символом.
Как подсчитать без начальных и конечных пробелов?
При работе с большими таблицами распространенной проблемой являются начальные или конечные пробелы, то есть лишние пробелы в начале или конце различных заголовков или заголовков. Вы вряд ли заметите их на бумаге, но, встретив их несколько раз, вы научитесь их опасаться.
Если вы подозреваете, что в ваших данных есть несколько невидимых пробелов, мы легко с этим справимся.
Чтобы получить длину текста без начальных и конечных пробелов, просто вставьте функцию TRIM в DLSTR:
= ДЛСТР (ОБРЕЗАТЬ (A2))
Примеры применения ДЛСТР
Эта функция часто используется в качестве вспомогательного средства в составных формулах вместе с другими текстовыми функциями.
К тому же эти комбинации позволяют решать самые необычные задачи.
Пример 1 — посчитать слова
Сколько слов в ячейке? Обычно между ними на 1 больше пробелов. Если есть пробел, значит два слова, если два, то три слова и так далее.
Если есть вероятность, что между словами больше 1 пробела или есть пробелы в начале и конце ячейки, функция TRIM может удалить их.
Пробелы в строке можно подсчитать, измерив длину строки в символах:
- с ними,
- без них,
- и вычисляем разницу.
Как получить строку без пробелов? Здесь поможет функция REPLACE.
Так будет выглядеть формула для ячейки А1 с учетом всех этих нюансов. TRIM удаляет лишние пробелы, SUBSTITUTE удаляет их, а DLSTR измеряет длину строк:
= DLSTR (A1) — DLSTR (ПОДСТАВИТЬ (ОБРЕЗАТЬ (A1), «»; «»)) + 1
Пример 2 — посчитать встречаемость фрагмента в тексте
Есть ли в тексте какой-то конкретный персонаж? И если да, то сколько их?
Давайте взглянем на пару примеров формул.
Есть ли в ячейке лишние пробелы
Следующая формула проверит, есть ли в ячейке лишние пробелы. Это полезно, когда вам нужно не просто удалить их, а узнать, были ли они:
= DLSTR (ОБРЕЗАТЬ (A1)) <> DLSTR (A1)
Формула для проверки наличия лишних пробелов в строке
Формула очевидна и достаточно проста. Если длина ячейки после удаления лишних пробелов с помощью функции ОБРЕЗАТЬ такая же, как у исходной, значит, их нет, а если, наоборот, не то же самое, то есть.
Обратите внимание, что несмотря на то, что в том же утверждении, что и вопрос, звучит условие ЕСЛИ, функция ЕСЛИ здесь не нужна. Если равенство верное, Excel поместит результат ИСТИНА в саму ячейку и ЛОЖЬ, если наоборот.
Сколько раз встречается символ или слово в тексте
По аналогии с предыдущим примером мы не можем выполнить логическое (ДА-НЕТ, ИСТИНА-ЛОЖЬ) сравнение длин строк до и после удаления символа или фрагмента, а вычислить разницу.
Если мы ищем персонажа, он сразу поймет его присутствие.
Чтобы удалить произвольный символ из строки, нам понадобится функция REPLACE.
Подсчитайте появление буквы в ячейке
Если фрагмент текста состоит из 2 и более символов, нам также нужно разделить результат на его длину:
= (DLSTR (A1) -LSTR (ПОДСТАВИТЬ (A1; B1; «»))) / DLSTR (B1)
В этой формуле исходный текст находится в ячейке A1, а подсчитываемый кусок — в ячейке B1.
Подсчитать появление фрагмента текста
Обратите внимание на строки 5 и 6: поскольку функция «ПОДСТАВИТЬ» чувствительна к регистру, она не удаляла первое вхождение из текста. Если вам все еще нужно учитывать вхождения, вам могут понадобиться функции LOWER или UPPERCASE.
Подсчитываемый текстовый фрагмент может быть любой длины.
Еще один момент: функция может не подходить для подсчета коротких слов, потому что одно слово может входить в состав другого.
Пример 3 — извлечь или удалить последнее слово
Зная количество пробелов в тексте, вы можете заменить последний редким символом, чтобы вычислить его положение позже.
В этом, как и в предыдущем примере, нам поможет функция REPLACE: она позволяет заменять не только все определенные фрагменты текста в строке, но и конкретное вхождение (первое, второе и т.д.).
Что это нам дает? Последний пробел — это не что иное, как символ, отделяющий последнее слово от остальной части строки. А по положению, причем несложными манипуляциями, удалить или извлечь.
Пример 4 — удалить первые N символов / первое слово
Простая комбинация функций RIGHT, SEARCH и DLSTR позволяет удалить первое слово из ячейки.
Механика проста:
- вычислить позицию первого пробела с функцией ПОИСК,
- вычтите это число из длины строки (DLSTR
- Извлеките функцию RIGHT, полученную в результате отличия от исходной строки
Убираем первое слово из ячейки, получая второе
Более подробно пример рассмотрен в статье о функции ВПРАВО.
Если количество символов заранее известно, формула еще проще: нужны только DLSTR и RIGHT:
= ВПРАВО (A1; DLSTR (A1) -4)
Удалите первые 4 символа из строки с помощью функций DLSTR и RIGHT
Пример 5 — замена последнего символа в ячейке
Это может показаться очевидным, но позиция последнего символа в строке равна его длине в символах. А затем, зная длину строки, вы можете заменить последний символ в ней, взяв на 1 символ меньше, используя ВЛЕВО, и объединив с желаемым текстом через амперсанд:
= LEFT (A1; DLSTR (A1) -1) & «Текст вместо последнего символа»
Или используйте функцию REPLACE, которая примет в качестве входных данных длину строки в качестве позиции заменяемого символа:
= REPLACE (A1; DLSTR (A1); 1; «Текст вместо последнего символа»)
ПРОПНАЧ
Функция PROPER text делает первую букву каждого слова заглавной, а остальные преобразует в нижний регистр.
Любая первая буква, следующая за небуквальным символом, также преобразуется в верхний регистр.
СЖПРОБЕЛЫ
Удаляет все ненужные пробелы из текста, кроме одинарных пробелов между словами.
В тех случаях, когда наличие лишнего пробела в конце или начале строки обнаружить сложно, эта функция просто становится незаменимой. На следующем рисунке вы можете видеть, что содержимое ячеек A1 и B1 абсолютно одинаково, но это не так. В ячейке A1 мы намеренно вставили лишний пробел в конце слова Excel. В результате функция EXACT вернула нам значение FALSE.
Применяя функцию ОБРЕЗАТЬ к значению ячейки A1, мы удалим из нее все лишние пробелы и получим правильный результат:
TRIM полезен для данных, импортированных в листы Excel из внешних источников. Такие данные очень часто содержат лишние пробелы и различные непечатаемые символы. Чтобы удалить из текста все непечатаемые символы, используйте функцию ПЕЧАТЬ.
Как посчитать без любых пробелов?
Если ваша цель состоит в том, чтобы считать только буквы и цифры без пробелов в начале, конце или середине, вам нужно немного более сложное выражение:
= DLSTR (ПОДСТАВИТЬ (A2;» «;»»))

Как вы, наверное, знаете, функция REPLACE заменяет один текст другим. В приведенной выше формуле вы заменяете пробел («») ничем, то есть пустой текстовой строкой («»). И поскольку вы встраиваете ПОДСТАВКУ в функцию DLSTR, подстановка фактически не выполняется в ячейках, она просто говорит вам вычислить длину строки без пробелов.
СТРОЧН
Если в Excel вам нужно написать все строчные буквы, например, преобразовать их в строчные, на помощь приходит текстовая функция LOWER. Он не заменяет неалфавитные символы.
ПОВТОР
Функция REPEAT повторяет строку текста указанное количество раз. Строка указывается как первый аргумент функции, а количество повторов — как второй.
Форматирование
Если входное значение не в текстовом формате, оно преобразуется в текстовый формат.
Ячейки в формате даты обрабатываются как числа, поэтому они обычно содержат 5 символов (если даты не близки к 1900).
Процентный формат также преобразуется в натуральное число, например 2500% = 25 (2 символа, см. Примерную таблицу выше).
ПСТР
Текстовая функция MID возвращает указанное количество символов, начиная с указанной позиции. Пробел считается символом.
ПРОПИСН
Текстовая функция UPPERCASE переводит все буквы в верхний регистр, т.е преобразует их в верхний регистр. Как и LOWER, он не заменяет неалфавитные символы.
СОВПАД
Функция ТОЧНЫЙ позволяет сравнивать две текстовые строки в Excel. Если они точно такие же, возвращается ИСТИНА; в противном случае — ЛОЖЬ. Эта текстовая функция чувствительна к регистру, но игнорирует различия в форматировании.
Если случай для вас не важен (это происходит в большинстве случаев), вы можете использовать формулу, которая просто проверяет равенство двух ячеек.
Синтаксис
DLSTR (текст)
DLINB (текст)
Аргументы этой функции описаны ниже.
-
Требуется текст. Текст, длину которого вы хотите узнать. Пробелы считаются символами.
Источники
- https://mister-office.ru/funktsii-excel/len-functions-count-characters-cell.html
- https://msoffice-prowork.com/ref/excel/excelfunc/text/len/
- https://office-guru.ru/excel/tekstovye-funkcii-excel-v-primerah-77.html
- https://SEMTools.guru/ru/excel-functions/len/
- https://www.wallstreetmojo.com/len-excel-function/
- https://support.microsoft.com/ru-ru/office/%D0%B4%D0%BB%D1%81%D1%82%D1%80-%D0%B4%D0%BB%D0%B8%D0%BD%D0%B1-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8-%D0%B4%D0%BB%D1%81%D1%82%D1%80-%D0%B4%D0%BB%D0%B8%D0%BD%D0%B1-29236f94-cedc-429d-affd-b5e33d2c67cb






















































