Скачиваний:
8
Добавлен:
27.02.2016
Размер:
32.77 Кб
Скачать

2

ТЕКСТОВЫЕ ФУНКЦИИ

С помощью функций обработки текста можно с помощью формул производить действия над строками текста – например, изменить регистр или определить длину строки. Можно также объединить несколько строк в одну.

К примеру, с помощью функций СЕГОДНЯ и ТЕКСТ можно создать сообщение, содержащее текущую дату и привести его к виду "дд-ммм-гг":

="Балансовый отчет от "&ТЕКСТ(СЕГОДНЯ(),"дд-мм-гг")

Функция СЦЕПИТЬ объединяет несколько текстовых строк в одну.

Синтаксис: СЦЕПИТЬ (текст1; текст2;...).

В качестве аргументов могут быть указаны от 1 до 30 элементов текста, объединяемых в один элемент текста.

Вместо функции СЦЕПИТЬ для объединения текстов можно использовать оператор &.

Примеры: если в ячейке А5 содержится значение "Петренко", то функция СЦЕПИТЬ("студент ";А5) вернет результат "студент Петренко". Тот же результат будет получен, если использовать выражение = "студент "&А5.

Функция НАЙТИ находит вхождение одной текстовой строки (искомый_текст) в другую текстовую строку (просматриваемый_текст) и возвращает положение (т. е. номер символа) начала искомого текста относительно крайнего левого символа просматриваемого текста.

Синтаксис: НАЙТИ (искомый_текст; просматриваемый_текст; нач_позиция). При этом нач_позиция – это позиция символа в просматриваемом тексте, с которой следует начинать поиск. Если этот аргумент опущен, то он полагается равным 1. Аргумент нач_позиция можно использовать, чтобы пропустить нужное количество символов с левого края текста.

Примеры: НАЙТИ("е"; "предприятие") вернет 3, а НАЙТИ("е"; "предприятие";6) вернет 11.

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

Синтаксис: ПОИСК (искомый_текст; текст_для_поиска; нач_позиция).

В искомом тексте можно использовать символы шаблона: знак вопроса ? (соответствует одному любому символу) и звездочка * (соответствует любой последовательности символов). Если искомый_текст не найден, то возвращается значение ошибки #ЗНАЧ!.

Пример: если ячейка B17 содержит слово "доход", а ячейка A14 содержит "Сумма Доходов", то ПОИСК($B$17;$A$14) равняется 7.

Функция ПОИСК часто используется совместно с функцией ЗАМЕНИТЬ, которая заменяет часть текстовой строки на другую текстовую строку.

Синтаксис: ЗАМЕНИТЬ (старый_текст; нач_ном; число_литер; новый_текст).

Старый_текст – это текст, в котором желательно заменить некоторые литеры. Нач_ном – это позиция символа в старом_тексте, начиная с которой происходит замена. Число_литер – это число символов в старом_тексте, которые заменяются новым_текстом. Новый_текст – это текст, который заменяет символы в тексте старый_текст.

Пример: следующая формула заменяет две последние цифры в тексте 1990 на 91: ЗАМЕНИТЬ("1990"; 3; 2; "91") равняется "1991".

Пример совместного использования функций ПОИСК и ЗАМЕНИТЬ: если ячейка B17 по-прежнему содержит слово "доход", а ячейка A14 содержит "Сумма Доходов", то ЗАМЕНИТЬ($A$14;ПОИСК($B$17;$A$14);7;"Расходов") вернет текст "Сумма Расходов". В данном примере функция ПОИСК использована для того, чтобы задать функции ЗАМЕНИТЬ корректное значение аргумента нач_позиция, с которой нужно вставить новый текст.

В том случае, если надо заменить определенный текст в строке на другой фрагмент текста вне зависимости от номера его начальной позиции, используется функция ПОДСТАВИТЬ. Функция подставляет фрагмент нов_текст вместо фрагмента стар_текст в указанной первой текстовой строке.

Синтаксис: ПОДСТАВИТЬ (текст; стар_текст; нов_текст; номер_вхождения).

При этом номер_вхождения определяет, какое вхождение фрагмента стар_текст нужно заменить на нов_текст. Если номер_вхождения определен, то только это вхождение фрагмента стар_текст заменяется. В противном случае, каждое вхождение фрагмента стар_текст в текстовой строке заменяется на фрагмент нов_текст.

Пример: если в ячейке С3 содержится значение "Годовой отчет", то ПОДСТАВИТЬ(С3; "Годовой"; "Недельный") равняется "Недельный отчет".

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

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

Начальная_позиция указывает, с какой позиции надо извлечь фрагмент текста. Количество_символов указывает, сколько символов нужно вернуть.

Примеры: ПСТР("Расчетная ведомость";11;9) равняется "ведомость", а ПСТР("1234"; 5; 5) равняется "" (пустая строка).

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

Для подсчета количества символов в тексте существует функция ДЛСТР (длина строки).

Синтаксис: ДЛСТР (текст).

Пробелы считаются как символы.

Примеры: ДЛСТР("Харьков – первая столица") возвращает значение 24, а ДЛСТР("") имеет значение 0.

Функция СОВПАД сравнивает две строки текста и возвращает значение ИСТИНА, если они в точности совпадают, и ЛОЖЬ – в противном случае. Функция СОВПАД учитывает регистр, но игнорирует различия в форматировании. Функция СОВПАД используется для того, чтобы проверить, входит ли некоторый текст в документ.

Синтаксис: СОВПАД (текст1; текст2).

Для преобразования всех буквенных символов в строке из строчных в прописные или наоборот используются соответственно функции ПРОПИСН и СТРОЧН. Чтобы первая буква каждого слова стала прописной – функция ПРОПНАЧ.

Синтаксис: ПРОПИСН (текст),

СТРОЧН (текст), ПРОПНАЧ (текст).

Часто необходимо бывает преобразовать числовое значение в текст по заданному числовому формату. Для этого служит функция ТЕКСТ.

Синтаксис: ТЕКСТ (значение; формат).

Формат должен быть указан в текстовой форме (с вкладки Число диалога Формат ячеек). Формат не может содержать звездочку (*) и не может быть Общим числовым форматом .

Примеры: если в ячейках А6 и А7 соответственно содержатся значения 2,715 и "15.4.91", то ТЕКСТ (А6; "0,00 грн.") равняется "2,72 грн.", а результатом функции ТЕКСТ(А7; "Д МММ, ГГГГ") будет "15 Апр, 1991".

Замечание: форматирование ячейки меняет только формат, но не значение. Использование функции ТЕКСТ преобразует значение в форматированный текст, и результат больше не участвует в вычислениях как число.