Получение последовательности слов с начала текстовой строки
Например, у нас есть список из одного столбца, в котором в строку записано Фамилия Имя Отчество, дата рождения, нам необходимо разделить этот список на два столбца с ФИО и датой рождения отдельно.
Рассмотрим строку «Фамилия Имя Отчество 01.01.1900» видим, что строка «Фамилия Имя Отчество» заканчивается на третьем пробеле.
Алгоритм действий: чтобы получить «ФИО» необходимо вернуть количество символов до третьего пробела.
Порядок действий:
1. Получаем позицию первого пробела, в ячейку B1 вводим формулу «=НАЙТИ(" ";A1;1)»;
2. Используя данные первой позиции, получим позицию второго пробела, в C1 вводим формулу «=НАЙТИ(" ";A1;B1+1)»;
3. Далее используя данные позиции второго слова получим позицию третьего пробела и в D1 вводим формулу «=НАЙТИ(" ";A1;C1+1)».
И, используя функцию «ЛЕВСИМВ» с результатом третьей операции, как переменную аргумента Число_знаков-1, получаем Фамилию Имя Отчество, введя в ячейку E1 формулу «=ЛЕВСИМВ(A1;D1-1)».
Получение слова с конца текстовой строки
Далее из текста необходимо получить дату рождения. В строке «Фамилия Имя Отчество 01.01.1900» дата рождения идет после третьего пробела.
Алгоритм действий: чтобы получить дату рождения из строки «Фамилия Имя Отчество 01.01.1900» необходимо вернуть количество знаков от третьего пробела до конца строки.
Порядок действий:
1. В ячейке F1 вводим формулу «=ДЛСТР(A1)» и получаем количество символов всей строки;
2. Позицию третьего пробела берем из расчетов предыдущего примера, ячейка D1.
3. В ячейку G1 водим формулу «=ПСТР(A1;D1+1; ДЛСТР(A1)-D1)» получаем строку – дата рождения.
Разберем пример. У функции «ПСТР» есть три аргумента это текст, начальная_позиция, число_знаков. Начальную позицию, с которой функция вернет слово, берем из ячейки D1, это позиция третьего пробела и прибавляем к нему 1, получаем позицию начала слова дата рождения. Чтобы получить число знаков, которое вернет функция, мы от количества знаков всей стоки отнимаем позицию третьего пробела – ДЛСТР(A1).
Важно! При возвращении слова из конца строки данным способом, необходимо учитывать, что количество пробелов в текстовой строке должно быть одинаково во всем списке обрабатываемых строк. Функция, которая бы возвращала позицию вхождения одной строки в другую, просматривая строку с конца в Excel нет.