Примеры и особенности функции ПСТР в Excel

Функция ПСТР (для однобайтовых кодировок) отображает заданное пользователем количество знаков из текстовой строки. Отсчет ведется с указанной позиции. Подобную задачу решает и функция ПСТРБ. Только она работает с двухбайтовыми знаками (возвращает заданное число байт).

Особенности и синтаксис

Каждый символ для функции – один знак. Вне зависимости от вида кодировки. Для ПСТРБ двухбайтовый символ – два знака (если включена двухбайтовая кодировка). Причем этот язык является языком по умолчанию. Двухбайтовую кодировку поддерживает японский, китайский и корейский языки.

Вернемся к функции ПСТР. Ее синтаксис:

  1. Текстовая строка. Текст с символами, которые функции нужно извлечь.
  2. Заданная позиция. Начальная позиция определенного знака в тексте, с которого начнется отсчет. Позиция первого извлекаемого знака – 1.
  3. Количество знаков. Сколько символов функции нужно вернуть.

Все аргументы обязательные.

Особенности работы функции:

  1. Если количество знаков аргумента «Начальная позиция» превышает длину текстовой строки, то в результате мы получим пустую строку.
  2. Если значение аргумента «Начальная позиция» меньше единицы, вернется ошибка #ЗНАЧ!.
  3. Если аргумент «Количество знаков» имеет отрицательное значение, то функция возвращает ошибку #ЗНАЧ!.

Функция ПСТР в Excel предназначена для работы с текстовыми данными.

Примеры функции ПСТР в Excel

Рассмотрим, как работает ПСТР, на хрестоматийном примере.

Данные:

Данные.

Формула:

Формула.

Функция ПСТР анализирует текстовое значение в ячейке А1 (первый аргумент) и возвращает 7 знаков (третий аргумент), начиная с первого (второй аргумент).

Формула:

ПСТР.

Она возвращает из ячейки А1 (первый аргумент) 4 знака (третий аргумент), начиная с девятого (второй аргумент). Пробелы тоже считаются. 9 – начальная позиция, с которой функция будет брать знаки. В примере мы самостоятельно посчитали количество знаков: «функция» - 7 знаков + 1 знак пробела. Итого: 8 знаков.

4 – третий аргумент – число символов, которое функция вернет. В данном примере это количество легко подсчитать. Если максимальное количество знаков строки неизвестно, можно указать на глаз, побольше. Например, 50 символов (длиннее строк не существует).

Формула:

Пусто.

Так как длина текстовой строки в ячейке А1 (первый аргумент) меньше начальной позиции (второй аргумент), в результате получаем пустую строку.

Рассмотрим практическое применение функции.

Исходник.

Из перечня товаров нам необходимо извлечь наименования коллекций. Для этих целей данная формула подходит как нельзя лучше.

Применим формулу:

Gino.

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

Пример.

Функция НАЙТИ помогает определить число знаков по какому-либо признаку. В примере – отыскивает слово «коллекция» для функции ПСТР. Последняя возвращает текст от искомого знака. Корректировка +10 учитывает, что искомый текст тоже входит в подсчет. Но возвращать его не нужно.

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

Товары.

Мы извлекли необходимые значения – цены. Но суммировать их обычным способом не получается.

СУММ.

Функция СУММ не распознает значения, полученные посредством функции ПСТР. Так как цифры представлены в текстовом формате. Чтобы превратить их в числа, необходимо в отношении полученного результата применить функцию ЗНАЧЕН.

ЗНАЧЕН.

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