Использование встроенных функций Excel
При создании макросов VBA можно использовать некоторые встроенные функции Excel, которых нет среди встроенных функций VBA, например, различные функции, выполняющие математические, логические, финансовые и статистические операции над данными в рабочих листах. Чтобы использовать функцию, принадлежащую Excel, необходимо обращаться к ней посредством программного объекта Application через свойство WorksheetFunction: Application.WorksheetFunction.ИмяФункции(Cписок аргументов) Объект Application VBA представляет host- приложение и все его ресурсы. Если Вы не уверены, доступна ли определенная функция Excel для VBA, используйте Object Browser, чтобы проверить содержит ли список Members эту функцию, при выбранном Application в списке Classes и при выбранном host-приложении в списке Project/Library. Если нужной функции нет в списке, то она недоступна для VBA. Другая сложность использования встроенных функций Excel заключается в том, что VBA воспринимает только латинские имена встроенных функций, в то время как Мастер функций русифицированной версии Excel использует русские аналоги имен функций (хотя справку выдает и по английским именам, если их знать). Например, для вычисления определителя матрицы в Excel можно использовать функцию как с русским именем МОПРЕД(Массив), так и с латинским именем MDETERM(...). Чтобы узнать латинское имя требуемой функции, нужно либо обратиться к хорошему справочнику, например, [2], либо запустить макрорекордер, вызвать функцию под русским именем, а затем посмотреть созданный код макроса.
Пример. Найти определитель матрицы размерностью 5x5, которая представлена листе Excel. Результат вывести в стандартном окне MsgBox.
Диапазону ячеек, составляющих матрицу, присвоим имя Matrix (через меню Вставка - Имя—Присвоить). Тогда код макроса имеет вид:
Результат решения:
Литература 1. Кузьменко В.Г. Программирование на VBA 2002. - М.: ООО «Бином-Пресс», 2003. 2. Гарнаев А.Ю. Excel, VBA, Internet в экономике и финансах. - Спб ■ БХВ-Петербург, 2005. 3. Биллинг В.А. VBA и Office 2000. Офисное программирование. - М.: Издательско-торговый дом «Русская Редакция», 1999. 4. Мельников П.П. и др. Практикум по экономической информатике: Учебное пособие: ч.Ш, М: Финансы и статистика; Перспектива, 2002.
|