Макросы VBA позволяют решать задачи автоматизации рутинных действий, обработки и анализа данных, создания сложных отчетов, а также интеграции с другими приложениями. Они позволяют упростить работу с электронными таблицами, сократить время на выполнение повторяющихся задач, повысить точность благодаря минимизации человеческого фактора и расширить стандартный функционал программ, создавая новые функции и пользовательские интерфейсы. Все выше перечисленное позволяет делать модуль «Интерпретатор макросов VBA».
В состав модуля «Интерпретатор макросов VBA» входит:
• среда разработки макросов «Офис+ редактор офисных сценариев VBA», который позволяет создавать модули VBA, пользовательские формы, редактировать код, создавать обработчики событий для документов, книг, элементов управления и т.п.
• «Обозреватель объектов», который позволяет пользователю посмотреть доступные ему для программирования библиотеки, их классы, методы и константы.
Для получения функциональности макросов VBA пользователь может:
1. нажать на кнопку внутри таблицы или документа и запустить связанный с этим элементом управления макрос VBA
2. в панели инструментов перейти на закладку «Сервис» раздел «Сценарии» кнопка «Редактор сценариев» и запустить редактор офисных сценариев VBA, найти необходимый ему макрос и запустить его из редактора
3. в панели инструментов перейти на закладку «Сервис» раздел «Сценарии» кнопка «Запуск сценариев» и вызвать диалог запуска сценариев, выбрать необходимый макрос и выполнить его или измерить его в редакторе сценариев.
На скриншоте ниже на примере «Офис+ Таблицы» показаны выше перечисленные возможности запуска сценариев.

Редактор офисных сценариев VBA
Рассмотрим возможности среды разработки макросов «Офис+ редактор офисных сценариев VBA». На скриншоте ниже Вы можете увидеть внешний вид редактора.

В левом верхнем углу представлена иерархическая структура VBA проектов открытых в приложении файлов. В структуре каждого из проекта содержаться различные модули кода или модули пользовательских форм (редактор пользовательских форм будет рассмотрен ниже). В левом нижнем углу расположено окно, позволяющее изменять свойства выделенных модулей или выделенных элементов управления в редакторе пользовательских форм. В правой части редактора находится редактор кода с подсветкой ключевых слов VBA. При написании кода, если переменная типизирована явно, выскакивает подсказка допустимых методов, так называемая система интеллисенс. В редакторе поддерживается много полезных горячих клавиш, например, для перехода к вызываемому методу и обратно, а так же запуск макроса, в котором установлена каретка редактора.
Редактор пользовательских форм VBA
Ниже приведен скриншот экрана, демонстрирующий редактор пользовательских форм.

Стандартный визуальный редактор пользовательских форм, который позволяет запрашивать необходимые данные для документа. Элементы управления для добавления на форму находятся в правой верхней части экрана. В левой нижней части Вы можете изменить свойства выделенного элемента управления по своему усмотрению и в соответствии с Вашими требованиями, как он должен быть представлен на форме для пользователя. С помощью клавиш F7 и SHIFT+F7 Вы можете переключаться между кодом для обработки данных пользовательской формы и обратно в визуальный редактор.
Обозреватель объектов
Еще одна полезная функция доступна по нажатию на клавишу F2 в редакторе офисных сценариев. Пользователю будет показано окно «Обозреватель объектов», который позволяет посмотреть доступные ему для программирования библиотеки, их классы, методы и константы.

ВАЖНО!
Один из вопросов, который может возникнуть у опытного пользователя VBA. Как быть с элементами COM/ActiveX, которые могут быть использованы в VBA коде, ведь в Linux системах их не существует. Ответ прост - модуль «Интерпретатор макросов VBA» не работает с данными компонентами, как и с вызовами WINAPI функций и это скорее плюс, чем минус.
Во-первых, использование сторонних COM/ActiveX объектов, как и вызов WINAPI функций может нанести вред компьютеру пользователя или утечке секретных данных пользователя или его организации.
Во-вторых, наиболее необходимые и “безобидные” COM/ActiveX, которые серьезно расширяют возможности пользователя реализованы:
• VBA библиотека VBScript, позволяющий использовать в VBA регулярные выражения
• VBA библиотека Scripting, позволяющий производить в VBA файловые операции и проверки, в том числе чтение и запись данных из\в файл
• VBA библиотека MSXML2, позволяющий использовать в VBA чтение и запись данных из\в файл XML
• VBA библиотека ADODB, позволяющий производить в VBA файловые операции чтения и запись данных из\в файл, а так же получать данные из любых баз данных.
В-третьих, если пользователю понадобится дополнительный функционал в VBA, он может обратиться в службу поддержки компании «Офис+» с запросом на реализацию дополнительного функционала, либо запросить шаблон проекта и разъяснения, для того, чтобы самому разработать этот дополнительный функционал.
Функции этих библиотек Вы можете также посмотреть в обозревателе объектов.
Заключение
Модуль «Интерпретатор макросов VBA», который встроен в продукты офисного пакета «Офис+ Стандартный» позволяет пользователям переходить на отечественное программное обеспечение («РЕД ОС», «AstraLinux», «Офис+ Стандартный») не теряя функциональность и наработки долгих лет в автоматизации документов, отчетов, сбора и анализа данных.