С помощью функций обработки текста можно выполнять различные преобразования над строковыми данными. В Microsoft Excel имеется 24 функции, относящихся к данной группе. Рассмотрим использование некоторых из них при решении различных задач, часто возникающих в практической деятельности:
СЦЕПИТЬ (текст1; текст2; …) – объединяет несколько текстовых строк в одну.
СЖПРОБЕЛЫ (текст) – удаляет из текста лишние пробелы (кроме одиночных пробелов между словами).
ЛЕВСИМВ (текст;кол_зн) – возвращает указанное количество знаков с начала строки текста.
НАЙТИ (строка;текст; поз) – возвращает номер позиции первого вхождения строки в текст, начиная с указанной позиции. Нумерация ведется относительно левого символа текста.
ДЛСТР(текст) – возвращает количество знаков в текстовой строке.
ПРАВСИМВ(текст;кол_зн) – возвращает указанное количество знаков с конца строки текста.
ПСТР (текст; поз; кол_зн) – возвращает заданное количество знаков из строки текста, начиная с указанной позиции.
ЗАМЕНИТЬ (текст; поз; кол_зн; строка) – заменяет в тексте начиная с указанной позиции заданное количество символов на другую строку.
7. Есть список студентов группы в следующем виде:
Фамилия | Имя | Отчество |
Бабкина | Дарья | Дмитриевна |
Воронова | Виктория | Владимировна |
Громов | Николай | Игоревич |
Кононенко | Александр | Анатолиевич |
Захарчук | Давид | Геннадиевич |
Погоряная | Алина | Валериевна |
Рыжик | Наталия | Васильевна |
Середа | Елена | Сергеевна |
Шляхто | Олеся | Олеговна |
Васильченко | Екатерина | Романовна |
Гуджен | Мария | Александровна |
Евтихиева | Дарья | Алексеевна |
Имашова | Анна | Сергеевна |
Ковалева | Анастасия | Павловна |
Козел | Алина | Олеговна |
Лошакова | Ирина | Тимофеевна |
Лощинина | Юлия | Геннадиевна |
Олейникова | Светлана | Александровна |
Олейник | Владлена | Сергеевна |
Пивоварова | Наталия | Евгеньевна |
Рабосевич | Сергей | Игоревич |
Роянова | Татьяна | Ивановна |
Товпыга | Валерия | Александровна |
Усатова | Татьяна | Александровна |
Хотеева | Надежда | Валериевна |
Якубовская | Екатерина | Александровна |
Нужно представить список несколько в другом виде, объединив фамилию, имя и отчество в одной ячейке:
A | B | C | |
Бабкина Дарья Дмитриевна Аеев Андрей Иванович | |||
… | |||
Якубовская Екатерина Александровна |
- Эта задача легко решается с помощью одной функции СЦЕПИТЬ. Выделив ячейку E1, с помощью Мастера функций в категории Текстовые выбираем эту функцию и заполняем нужные поля следующим образом
- (адреса ячеек вводятся автоматически, если щелкнуть мышью по соответствующей клетке в таблице; кавычки набирать не нужно, они также появятся автоматически после ввода пробела и перехода к следующему полю!)
- Осталось только растянуть формулу на нужное количество строк. В столбце E список получен.
- Скопируйте этот лист в эту же рабочую книгу:
- Если удалить столбцы А:С, то список «разрушится», вместо нужных данных, в столбце появятся ошибочные значения #ССЫЛКА! – мы удалили ячейки, на которые были ссылки в формулах. Чтобы такого не произошло, нужно сначала получить новый список в ячейках в виде значений (а не формул). Для этого нужно выделить столбец E и скопировать его (в буфер). Затем выделить нужный столбец, диапазон или верхнюю ячейку диапазона и в меню Правка выбрать пункт Специальная вставка. В открывшемся окне выбрать радиокнопку Значения и нажать ОК. В выбранном диапазоне формулы заменятся на значения и полученный список может «существовать» совершенно независимо от исходного.
8. Исходный список представьте в виде списка фамилий с инициалами:.
A | B | C | |
Бабкина Д.Д. Аеев Андрей Иванович | |||
… | |||
Якубовская Е.А. |
- Выполним поставленную задачу последовательно. Сначала в ячейку D1 внесём формулу с функцией, которая выделяет первый символ из имени. Для этого с помощью Мастера функций в категории Текстовые выберем функцию ЛЕВСИМВ (рекомендуется в практической работе и дальше все функции вставлять в формулы с использованием Мастера функций).
- После сохранения формулы в ячейке D1 скопируем её в ячейку E1 для выделения первого символа отчества.
- А затем с помощью функции СЦЕПИТЬ объединим нужные ячейки, пробел и точки.
- Перейти на строки 6, 7, и т.д. поможет ползунок на полосе прокрутки;
- С помощью копирования и специальной вставки сохраним полученный список в виде значений в нужном диапазоне.
9. Из имеющегося списка нужно получить список, в котором фамилии, имена и отчества расположены в отдельных ячейках (можно воспользоваться списком своей группы).
Заданный список:
Абраамян Люси Самвеливна |
Бойко Елена Владимировна |
Галушкина Алина Андреевна |
Дьяченко Анастасия Эдуардовна |
Ермакова Анна Андреевна |
Коляса Светлана Васильевна |
Королева Мария Сергеевна |
Кривенко Юлия Сергеевна |
Куюмджи Анастасия Витальевна |
Лопаносова Наталья Владимировна |
Митрофанова Александра Станиславовна |
Могилко Елена Юрьевна |
Никитенко Анастасия Олеговна |
Панасюк Анастасия Владимировна |
Пантелеева Юлия Вадимовна |
Помазан Дарья Александровна |
Репринцева Валерия Михаловна |
Романюк Алина Александровна |
Садчикова Виктория Викторовна |
Свищева Анастасия Александровна |
Симонова Анна Олеговна |
Симонова Марина Владиславовна |
Черепицкая Юлия Анатольевна |
Черняк Елена Сергеевна |
Шило Анна Вадимовна |
- При решении данной задачи будем считать, что между фамилией, именем и отчеством стоят ровно по одному пробелу. Если это не так, сначала приведем исходный список к такой структуре. Чтобы не усложнять задачу, будем выполнять действия последовательно, записывая в отдельные ячейки промежуточные результаты расчетов с использованием различных функций:
- В ячейку В1 – формулу, позволяющую удалить лишние пробелы:
= СЖПРОБЕЛЫ(А1)
- В ячейку С1 – формулу, позволяющую найти позицию первого пробела:
=НАЙТИ(" ";B1) – третий параметр не указан, т.к. ищем первое вхождение пробела от начала строки.
- В ячейку D1 – формулу, позволяющую найти позицию второго пробела (между именем и отчеством):
=НАЙТИ(" ";B1;C1+1) – здесь третий параметр указывает, что поиск ведется со следующего символа от найденного в С1 пробела.
- В ячейку E1 – формулу для определения общего количества символов в фамилии, имени и отчестве, включая два пробела.
=ДЛСТР(B1)
- В ячейку F1 – формулу для выделения фамилии. Воспользуемся уже знакомой функцией.
=ЛЕВСИМВ(B1;C1-1)
- Ячейку G1 пока пропустим.
- В ячейку H1 – формулу для выделения отчества. Отчество расположено в конце строки, поэтому воспользуемся функцией ПРАВСИМВ, а количество выделяемых символов легко найдем, зная номер позиции пробела перед отчеством и общую длину строки.
=ПРАВСИМВ(B1;E1-D1)
- В ячейку G1 – формулу для выделения имени. Имя расположено внутри строки между пробелами, позиции которых мы уже вычислили. Для его выделения воспользуемся функцией
=ПСТР(B1;C1+1;D1-C1-1)
- С помощью копирования и специальной вставки сохраним полученный список в виде значений.
![]() |