Соединение всех компонентов надписи и их текстовая обработка
В шестом блоке применяются текстовые функции, которые обрабатывают и соединяют результаты вычислений предыдущих блоков. Формулы блока (диапазон А15:А21) показаны на рис. 6.21, а алгоритм – на рис. 6.22.

Рис. 6.21. Рабочий лист с формулами, формирующими названия разрядов и единицы измерения

Рис. 6.22. Алгоритм завершающей обработки текста
В ячейке А15 находится следующая формула:
= СЦЕПИТЬ(A5; " "; A14; " "; B5; " "; C5; " "; D5; " "; D14; " "; E5; " "; F5; " "; G5; " "; G14; " "; H3; H4; " коп")Она объединяет в единое целое все компоненты, предназначенные для написания суммы прописью. В данной формуле содержатся ссылки на все ячейки, в которых находятся сформированные числительные и названия разрядов. Между ссылками на ячейки в функции СЦЕПИТЬ нужно обязательно поставить пробелы.
Например, при формировании прописью числа 1 111 111.11 аргументы функции будут иметь такие значения:
= СЦЕПИТЬ("один"; " "; "миллион"; " "; "сто"; " "; "одиннадцать"; " "; "тысяч"; " "; ... и т.д.)В ячейке А16 производится удаление из текста лишних пробелов:
= СЖПРОБЕЛЫ(A15)Для этого применяется текстовая функция СЖПРОБЕЛЫ (рис. 6.23), которая оставляет в тексте только одиночные пробелы. Функцию СЖПРОБЕЛЫ можно применять для обработки текстов, полученных из других прикладных программ, если эти тексты содержат избыточные пробелы. Синтаксис функции имеет следующий вид:
СЖПРОБЕЛЫ(текст)Где текст – это текст, из которого удаляются пробелы.
