Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава19.docx
Скачиваний:
3
Добавлен:
25.08.2019
Размер:
2.42 Mб
Скачать

Глава 19. Инструментальные средства пользователя в среде microsoft office

I

Встроенные функции VBA

Встроенные функции VBA обеспечивают сложные виды обработки данных, избавляя пользователя от разработки собственных программ. Функции имеют аргументы, в качестве которых используются переменные, константы, выражения. Как правило, встроенные функции VBA (табл. 19.6) возвращают отдельные значения (не массивы).

Некоторые встроенные функции VBA имеют два варианта реализации, в одном случае возвращается значение типа Variant, в другом — типа String. Предпочтительнее использовать строковый тип данных {String), если:

в большой программе используется много переменных;

программа детально структурирована;

данные записываются непосредственно в файл прямого доступа.

Некоторые встроенные функции VBA возвращают значение в виде строки символов, если к имени функции добавлен символ — $. Следующие встроенные функции имеют оди­наковые формат и правила применения, что и без символа $:

ChrS Oct$

ErrorS SpaceS

LCaseS TrimS

RTrimS

DirS

StringS

Input$

SeekS

MidS

TimeS

CurDirS RightS DateS

FormatS StrS HexS

LeftS UCaseS LTrimS

Таблица 19.6. Категории встроенных функций VBA

и.

it

Категории встроенных функций

Примеры функций

Математические

ABSQ — абсолютное значение числа; RNDQ — случайное число; INT() — выделение целой части числа; тригонометрические функции и др.

Строковые

LCASE() — преобразование в строчные буквы строки символов; UCASE() — преобразование в прописные буквы строки символов; LEFT() — выделение подстроки слева; RIGHT() — выделение подстроки справа; LEN() — определение длины строки и др.

Даты и времени

DATE() — возврат текущей системной даты; CDATE() — конвертирование выражения в формат дата/время; Т1МЕ() — возврат текущего системного времени; NOW() — возврат текущей даты и текущего времени (по компьютеру); DAY() — возврат номера дня года; MONTH() — возврат номера месяца года; WEEKDAY() — возврат номера дня недели; YEAR() — возврат номера года и др.

Преобразования типов данных

СШТ() — преобразование действительного числа в целое (с округлени­ем);

CSTR() — преобразование числа в строку символов; CVAR() — преобразование в тип данных VARIANT;

FORMAT() — форматирование данных типа дата, время, число, стро­ка символов для печати или записи в файл;

STRCOMP() — сравнение двух строк; VALQ — преобразование строки символов в число и др.

19.2. Создание приложений на языке visual basic for applications

703

Категории встроенных функций

Примеры функций

Файловой системы

FILEATRR0 — возврат атрибутов файла;

FILEDATETIME() — определяет дату и время создания (модификации) файла;

FILELEN() — определяет длину файла в байтах;

FREEFILE() — определяет следующий свободный номер для работы с файлом и др.

Функции пользователя

На языке VBA можно создавать функции пользователя, которые, в отличие от процедуры, возвращают вычисленное значение (одно); оно может участвовать в выражениях оператора присваивания.

Заголовок функции пользователя имеет вид:

Function <имя_процедуры> (аргументы) As <type> тело процедуры (операторы) End Function

Внимание! Для функции указывается тип возвращаемой вели­чины — As <type>. В теле функции используется оператор прис­ваивания вычисленного значения имени функции.

Пример 19.21. Использование пользовательской функции вычисления площади прямоугольника

Текст программы

Комментарий

Sub Proc_A ()

Вызывающая процедура

Объявление переменных

Dim S as Single

ПЛОЩАДЬ

Dim LL as Single

ДЛИНА

Dim HH as Single

ВЫСОТА

LL=12

Присвоение значений

HH=23

переменным

S=Sq(LL; H)/2+1200

Формула вызова функции Sq

End Sub

Конец процедуры

Function Sq (H As Single; L As Single) As Single

Объявление функции Sq

с аргументами

Sq=H*L

Присвоение функции Sq

результата вычисления

End Function

Конец функции

Управляющие структуры

VBA относится к категории языков структурного программирования и позволяет исполь­зовать стандартные управляющие структуры, к которым относятся." условный оператор, альтернативная выборка, циклы.

704