Оглавление:
- Перед началом написания кода
- Загрузка соответствующих объектных моделей
- Установка ссылок на другие программы
Видео: Связывание данных таблиц Excel и документов Word 2024
Visual Basic для приложений (VBA) не является языком программирования только для Microsoft Access 2003. Это язык программирования для всех прикладных программ, поддерживающих Automation. Автоматизация (с капиталом A ) означает способность программы манипулировать программным способом или автоматически управляться с использованием языка программирования, такого как VBA. Все основные приложения Microsoft Office, включая Microsoft Access, Microsoft Excel, Microsoft Outlook, Microsoft PowerPoint и Microsoft Word поддерживают автоматизацию. Вы можете написать код для автоматического обмена данными между ними.
Термины Объектная модель объекта ( COM ) и Автоматизация OLE - это более старые термины (но в основном синонимы), что в настоящее время называется Automation.
Перед началом написания кода
Перед обменом данными между Access и другими программами в Microsoft Office Suite имейте в виду, что писать код для выполнения задания редко требуется. Вы можете много импортировать и экспортировать данные между приложениями Microsoft Office без написания кода вообще. Например, вы можете выполнить следующие действия:
- Импортировать и экспортировать данные с помощью опций в меню «Файл доступа».
- Объекты электронной почты, такие как отчеты, путем выбора «Отправить» -> «Получатель почты».
- Используйте функцию OfficeLinks для отправки объектов другим программам.
- Используйте основные методы вырезания и вставки Windows и OLE (привязка объектов и встраивание) для копирования и связывания данных между программами.
- Объединить данные из таблиц Access в письма Microsoft Word, ярлыки, конверты или другие отчеты, используя функцию слияния Word. (Поиск в справочной системе Word для слияния. )
Если вы просто хотите получить данные из Access в другую программу (или наоборот), писать код, вероятно, не самый простой подход. Любой из предыдущих подходов проще, чем писать пользовательский код VBA для выполнения задания.
Конечно, однажды в пресловутой синей луне вы сталкиваетесь с ситуацией, когда писать код VBA - это единственный или, возможно, самый лучший способ получить работу. В этой статье вы найдете некоторые базовые концепции, которые вы хотите понять.
Загрузка соответствующих объектных моделей
Объектная модель Access предоставляет средство обращения к объектам по имени, чтобы вы могли управлять этими объектами с помощью кода VBA. Каждая прикладная программа Office, предоставляющая себя VBA, имеет объектную модель, как и Access.После того, как доступна объектная библиотека прикладной программы, вы можете использовать VBA для управления этим приложением.
Объектная модель определяет имена и организацию объектов в приложении. Библиотека объектов - это фактический файл, который хранится на вашем жестком диске и определяет эту концептуальную объектную модель.
Прежде чем писать код для управления внешним приложением из Access, вам необходимо загрузить соответствующую библиотеку объектов в диалоговое окно «Ссылки» в разделе «Доступ». Выполните следующие шаги:
1. Убедитесь, что вы находитесь в редакторе Visual Basic.
Нажмите Alt + F11, если вы находитесь в окне программы доступа.
2. Выберите «Инструменты -> Ссылки» в меню «Редактор Visual Basic».
Откроется диалоговое окно «Ссылки».
3. Прокрутите список доступных ссылок и выберите библиотеки объектов для программ, которые вы хотите контролировать.
На рисунке 1 выделенные библиотеки объектов предназначены для доступа, Excel, Outlook, PowerPoint и Word (среди прочих).
Рисунок 1: Несколько библиотек объектов, выбранных в диалоговом окне «Ссылки».
4. Нажмите «ОК».
Все библиотеки выбранных объектов будут открыты, и с этого момента вы получите доступ ко всем своим объектным моделям.
Библиотеки выгружаемых объектов
Загрузка большего количества библиотек объектов, чем необходимо, является расточительной, поскольку программы VBA работают медленнее. В реальной жизни вам редко нужно выбирать все доступные библиотеки объектов (см. Рис. 1), если вы действительно не собираетесь взаимодействовать со всеми этими программами из текущей базы данных.
Вы можете выгружать библиотеки так же легко, как вы их загружаете. Откройте диалоговое окно «Ссылки» и снимите флажок рядом с любой библиотекой объектов, которую вы на самом деле не собираетесь использовать.
Изучение объектной модели программы
Обозреватель объектов в редакторе Visual Basic предоставляет доступ ко всем объектным моделям, выбранным в настоящее время в диалоговом окне «Ссылки». Каждая загруженная объектная модель содержит много объектов, классов, свойств и т. Д. Но для автоматизации вы в основном хотите посмотреть на Application Object каждой программы. Например, объект Application Access предоставляет доступ к другим программам, поддерживающим автоматизацию. Объект приложения Excel (содержащийся в библиотеке объектов Excel) предоставляет Excel другим программам автоматизации и т. Д.
Чтобы открыть Обозреватель объектов в редакторе VBA, выберите «Вид» -> «Обозреватель объектов» или нажмите «F2». Чтобы получить справку с элементом в обозревателе объектов, щелкните его имя и нажмите кнопку Справка (?) На панели инструментов «Обозреватель объектов».
Когда вы выбираете из списка Project / Library в Object Brower и просматриваете список Classes в левом столбце, вы видите несколько объектов Application. Когда вы нажимаете один из объектов приложения, имя приложения отображается внизу в нижней части диалогового окна. Члены этого объекта приложения отображаются в панели справа, как показано на рисунке 2.
Рисунок 2: Обозреватель объектов после добавления нескольких библиотек объектов.
Установка ссылок на другие программы
С загруженными объектными моделями вы готовы начать настройку ссылок на доступные программы в коде VBA.Первым шагом является использование инструкции Dim для создания объектной переменной, относящейся к приложению, к которому вы хотите подключиться, с использованием следующего синтаксиса:
Dim anyName As [Новая] программа. Приложение
В синтаксисе anyName - любое ваше имя, которое будет использоваться в вашем коде для обращения к приложению. Аргумент - это официальное название программы автоматизации. Ключевое слово New является необязательным. Если включено, ключевое слово New открывает копию приложения в фоновом режиме (не обязательно видимое на экране) до запуска кода.
Некоторые примеры операторов Dim следующие:
Dim appExcel As New Excel. Приложение
Dim appOutlook As New Outlook. Приложение
Dim appPowerPoint как новая PowerPoint. Приложение
Dim appWord As New Word. Приложение
Инструкция Dim действительна только в том случае, если загружена соответствующая библиотека объектов. Например, Dim appWord As New Word. Заявление не выполняется, если библиотека объектов для Microsoft Word не выбрана в диалоговом окне «Ссылки».
Операторы Dim просто создают переменные объекта, которые ссылаются на приложение из вашего кода. Чтобы действительно установить соединение с объектом приложения, вам необходимо установить имя переменной объекта в приложение. Синтаксис
Установить объектVariable As CreateObject ("appName. Application")
где objectVariable совпадает с именем, указанным в инструкции Dim, а appName - имя прикладной программы. Ссылаясь на предыдущие инструкции Dim, операторы Set, которые вы используете для каждой определенной переменной объекта, следующие:
Установить appExcel = CreateObject («Excel. Application»)
Установить appOutlook = CreateObject («Outlook. Application»)
Установить appPowerPoint = CreateObject («PowerPoint. Application»)
Установить appWord = CreateObject («Word. Application»)
Каждое приложение в пакете Office имеет свою собственную объектную модель со своими собственными объектами и свойствами, но основные идеи одинаковы независимо от используемой вами программы и объектной модели.