Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа № 4. Текстовые функции.docx
Скачиваний:
21
Добавлен:
23.02.2015
Размер:
169.43 Кб
Скачать
  1. Разделение текста по столбцам при помощи функциональных возможностей Microsoft Excel

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

Функция

Синтаксис

ЛЕВСИМВ

ЛЕВСИМВ(текст, число_знаков)

ПСТР

ПСТР(текст,начальная_позиция,число_знаков)

ПРАВСИМВ

ПРАВСИМВ(текст, число_знаков)

ПОИСК

ПОИСК(искомый_текст,просматриваемый_текст,нач_позиция)

ДЛСТР

ДЛСТР(текст)

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

Например, в ячейке, содержащей только имя и фамилию, фамилия начинается после первого пробела. Некоторые имена списка могут содержать отчество, в этом случае фамилия начинается после второго пробела.

Пример имени

Описание

Имя

Отчество

Фамилия

Суффикс

1

ДжефСмит

Без отчества

Джеф

 

Смит

 

2

Эрик С. Курджан

Имя и один инициал

Эрик

Т.

Курджан

 

3

Ханаина Б. Г. Буэно

Имя и два инициала

Ханаина

Б. Г.

Буэно

 

4

Кан, Венди Бет

Сначала фамилия, с запятой

Венди

Бет

Кан

 

5

Мэри Кей Д. Андерсен

Имя из двух частей

Мэри Кей

Д.

Андерсен

 

6

Паула Баррето де Маттос

Фамилия из трех частей

Паула

 

Баррето де Маттос

 

7

Джеймс ван Итон

Фамилия из двух частей

Джеймс

 

ван Итон

 

8

Бэкон мл., Дэн К.

Сначала фамилия и суффикс, с запятой

Дэн

К.

Бэкон

мл.

9

Гэри Алтман III

С суффиксом

Гэри

 

Алтман

III

10

г-н Райан Ириг

C префиксом

Райан

 

Ириг

 

11

Джули Тафт-Райдер

Двойная фамилия через дефис

Джули

 

Тафт-Райдер

 

  1. Джеф Смит

В этом примере существует всего два компонента: имя и фамилия. Два компонента имени разделены пробелом.

A

B

C

Полное имя

Имя

Фамилия

Джеф Смит

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,1))

Имя начинается с первого знака в строке (Д) и заканчивается пятым знаком (пробелом). Формула возвращает пять знаков в A2, начиная слева.

Для поиска значения «число_знаков» следует воспользоваться функцией ПОИСК. С ее помощью находиться позиция пробела в A2, начиная слева, (5).

Фамилия начинается с пробела, 5 знаков, начиная справа, и заканчивается последним знаком справа (а). Формула извлекает 5 знаков в A2, начиная справа.

Для поиска значения «число_знаков» следует воспользоваться функцией ПОИСК и ДЛСТР. С помощью функции ПОИСК находим позицию пробела в A2 начиная слева (5). С помощью функции ДЛСТР подсчитываем общую длину текстовой строки, а затем вычтите количество знаков слева до первого пробела, найденного на шаге 1 (10 - 5 = 5)

  1. Эрик С. Курджан

В этом примере существует три компонента: имя, отчество и фамилия. Все компоненты разделены пробелами.

A

B

C

D

Имя

Имя (Эрик)

Отчество (С.)

Фамилия (Курджан)

Эрик С. Курджан

=ЛЕВСИМВ( A2, ПОИСК(" ",A2,1))

=ПСТР(A2,ПОИСК(" ",A2,1)+1,ПОИСК(" ",A2, ПОИСК(" ",A2,1)+1)-ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР( A2)-ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1))

  1. Ханаина Б. Г. Буэно

В этом примере существует два инициала отчества. Компоненты имени разделены пробелами.

A

B

C

D

Имя

Имя (Ханаина)

Отчество (Б. Г.)

Фамилия (Буэно)

Ханаина Б. Г. Буэно.

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПСТР(A2,ПОИСК(" ",A2, 1)+1,ПОИСК(" ",A2, ПОИСК(" ",A2,ПОИСК(" ",A2, 1)+1)+1)-ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2, ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1))

  1. Кан, Венди Бет

В этом примере фамилия ставится перед именем и вторым именем. Фамилия отделяется запятой, а имя и второе имя — пробелом.

A

B

C

D

Имя

Имя (Венди)

Второе имя (Бет)

Фамилия (Кан)

Кан, Венди Бет

=ПСТР(A2,ПОИСК(" ",A2,1)+1,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)-ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР (A2)-ПОИСК(" ",A2,ПОИСК (" ",A2,1)+1))

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1)-2)

  1. Мэри Кей Д. Андерсен

В этом примере имя состоит из двух частей: Мэри Кей. Все компоненты имени разделены пробелами.

A

B

C

D

Имя

Имя (Мэри Кей)

Отчество (Д.)

Фамилия (Андерсен)

Мэри Кей Д. Андерсен.

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1))

=ПСТР(A2,ПОИСК(" ",A2, ПОИСК(" ",A2,1)+1)+1,ПОИСК(" ",A2,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1)-(ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1))

  1. Паула Баррето де Маттос

В этом примере фамилия состоит из трех частей: Баррето де Маттос. Первый пробел разделяет имя и начало фамилии.

A

B

D

Имя

Имя (Паула)

Фамилия (Баррето де Маттос)

Паула Баррето де Маттос

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,1))

  1. Джеймс ван Итон

В этом примере фамилия состоит из двух частей: ван Итон. Первый пробел разделяет имя и начало фамилии.

A

B

D

Имя

Имя (Джеймс)

Фамилия ван Итон)

Джеймс ван Итон

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,1))

  1. Бэкон мл., Дэн К.

В этом примере сначала указывается фамилия, за которой стоит суффикс. Фамилия с суффиксом отделена от имени с вторым именем запятой.

A

B

C

D

E

Имя

Имя (Дэн)

Второе имя (К.)

Фамилия (Бэкон)

Суффикс (мл.)

Бэкон мл., Дэн К.

=ПСТР(A2,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1) +1 ,ПОИСК(" ",A2, ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1)-ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)+1))

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПСТР(A2,ПОИСК(" ", A2,1)+1,(ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)-2)-ПОИСК(" ",A2,1))

  1. Гэри Алтман III

В этом примере строка имени начинается именем и заканчивается суффиксом. Формула, используемая для этих компонентов имени, аналогична формуле, используемой в примере 2. Имя можно извлечь при помощи функции ЛЕВСИМВ, фамилию — при помощи функции ПСТР, а суффикс — при помощи функции ПРАВСИМВ.

A

B

C

D

Имя

Имя (Гэри)

Фамилия (Алтман)

Суффикс (III)

Гэри Алтман III

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПСТР(A2,ПОИСК(" ",A2,1)+1,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)-(ПОИСК(" ",A2,1)+1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1))

  1. г-н Райан Ириг

В этом примере перед полным именем стоит префикс. Формула, используемая для этих компонентов имени, аналогична формуле в примере 2. Имя можно извлечь при помощи функции ПСТР, а фамилию — при помощи функции ПРАВСИМВ.

A

B

C

Имя

Имя (Райан)

Фамилия (Ириг)

г-н Райан Ириг

=ПСТР(A2,ПОИСК(" ",A2,1)+1,ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1)-(ПОИСК(" ",A2,1)+1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,ПОИСК(" ",A2,1)+1))

  1. Джули Тафт-Райдер

В этом примере фамилия пишется через дефис. Компоненты имени разделены пробелом.

A

B

C

Имя

Имя (Джули)

Фамилия (Тафт-Райдер)

Джули Тафт-Райдер

=ЛЕВСИМВ(A2, ПОИСК(" ",A2,1))

=ПРАВСИМВ(A2,ДЛСТР(A2)-ПОИСК(" ",A2,1))