На этом шаге мы приведем общие сведения об ипользовании DLL в макросах MS Office.
До этого момента мы рассматривали использование объектов MS Office для создания документов Word и Excel и последующего изменения этих документов с помощью внешних приложений, разработанных в среде Delphi. Применение объекта Application и его свойств (в том числе объектов и коллекций объектов) позволяет управлять не только документами, но и свойствами самих приложений Word и Excel. Для программиста, решившего создавать документы (например, отчеты) на основе MS Office, это открывает широкие возможности.
Приложения MS Office могут использовать Visual Basic - встроенный язык, обладающий достаточной функциональностью для создания документов любой сложности. Можно спросить: зачем тогда использовать Delphi, может быть лучше сразу писать приложение на Visual Basic? Среда Delphi является инструментом создания приложений, которым доступны все возможности операционных систем Windows и поддерживаемых ими баз данных. Visual Basic для MS Office как инструмент больше ориентирован на создание и управление документами. Из этого следует, что наиболее эффективным решением будет не противопоставление, а объединение возможностей этих инструментов.
Рассмотрим еще один способ совместного использования Visual Basic и приложений Delphi. Только теперь управляющей программой будет приложение документа MS Office, а управляемой - приложение, разработанное в среде Delphi. Речь пойдет о частном случае применения созданных динамических библиотек (файлов DLL) в макросах рабочей книги Excel, позволяющих использовать дополнительные функции для формирования документа.
Например, вы разработали и тщательно отладили достаточно сложное приложение, которое работает с распределенными базами данных и имеет набор диалогов ввода и вывода информации. Поставлена задача: для некоторых пользователей, работающих и создающих отчеты исключительно в Excel, предоставить интерфейс, используя стандартные для вашей программы диалоговые окна, и организовать загрузку данных непосредственно в документ. Один из способов решения этой задачи - разработка динамической библиотеки, функции которой вызывают необходимые диалоги и обеспечивают обмен информацией между документом и созданным приложением. Средства Visual Basic позволяют использовать внешние функции, но перед использованием их нужно описать.
На следующем шаге мы рассмотрим описание внешних функций и процедур в модуле документа.