Для получения второго инициала действия аналогичные, получаем слово «Отчество» берем от него первую букву и добавляем точку в конце.
Алгоритм действий получения отчества: вернуть из строки с ФИО количество символов от второго пробела до конца строки. Для реализации алгоритма используем функцию « ПСТР».Для получения переменой аргумента « число_знаков » нам необходимо от числа символов строки отнять начальную позицию слова «Отчество»+1.
Для получения позиции начала слова «Отчество» нужна позиция второго пробела, воспользуемся информацией полученной ранее. Позиция второго пробела находится в ячейке C1. В ячейку G1 вводим формулу « =C1+1» и получаем позицию начала слова «Отчество».
Для получения количества символов текстовой строки используется функция « ДЛСТР». В ячейку H1, вводим формулу « =ДЛСТР(A1)».
В ячейку I1 вводим формулу « =ПСТР(A1;G1;H1-G1+1)» и получим слово «Отчество». Далее используя функцию « ЛЕВСИМВ» и «СЦЕПИТЬ»вводим в ячейке J1 формулу « =СЦЕПИТЬ(ЛЕВСИМВ(I1);".")» получаем второй инициал. И для получения Фамилии с инициалами в ячейку K1 введем формулу « =СЦЕПИТЬ(ЛЕВСИМВ(A1;НАЙТИ(" ";A1;1)-1);" ";F2;" ";J2)».
Разберем еще несколько примеров использования текстовых функций.
Получение последовательности слов с начала текстовой строки
Например, у нас есть список из одного столбца, в котором в строку записано Фамилия Имя Отчество, дата рождения, нам необходимо разделить этот список на два столбца с ФИО и датой рождения отдельно.
Рассмотрим строку «Фамилия Имя Отчество 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 нет.
Получение слова с конца строки заданной длинны
Для получения слова с конца строки заданной длинны, используется функция « ПРАВСИМВ»,она возвращает последний символ или несколько последних символов текстовой строки на основе заданного числа символов.
Синтаксис.
ПРАВСИМВ( текст,[число_знаков])
Аргументы функции.
Текст Обязательный. Текстовая строка, содержащая символы, которые требуется извлечь.
Число_знаков Необязательный. Количество символов, извлекаемых функцией « ПРАВСИМВ».
В предыдущем примере дата рождения в формате «00.00.0000» всегда имеет одинаковое количество символов – 10. И наиболее рациональнее было в предыдущем примере использовать функцию « ПРАВСИМВ», введя в ячейку H1 формулу « =ПРАВСИМВ(A1;10)» мы получим то же результат.
Читать дальше