Integrando Access 2003 com outros aplicativos do Microsoft Office

Visual Basic for Applications (VBA) não é uma linguagem de programação para o Microsoft Access 2003 sozinho. É uma linguagem de programação para todos os programas aplicativos que suportam Automation. Automação

(Com um capital UMA) Refere-se à capacidade de um programa para ser manipulado por meio de programação, ou controlados automaticamente utilizando uma linguagem de programação tais como VBA. Todas as principais aplicações do Microsoft Office, incluindo o Microsoft Access, Microsoft Excel, Microsoft Outlook, Microsoft PowerPoint e Microsoft Word suporte automação. Você pode escrever código para compartilhar automaticamente os dados entre eles.

Os termos Component Object Model (COM) e automação OLE são termos mais antigos para (mas são basicamente sinônimo de) que está atualmente denominada Automation.

Antes de começar a escrever código

Antes de trocar dados entre o Access e outros programas do Microsoft Office Suite, estar ciente de que escrever código para fazer o trabalho raramente é necessária. Você pode fazer uma abundância de importação e exportação de dados entre aplicações do Microsoft Office sem escrever qualquer código em tudo. Por exemplo, você pode executar as seguintes ações:

  • Importação e exportação de dados usando opções no menu de acesso ao arquivo.
  • objetos de acesso a e-mail, tais como relatórios, escolhendo Enviar para -> Destinatário de Correio.
  • Use o recurso OfficeLinks para enviar objetos para outros programas.
  • Use técnicas básicas do Windows cut-and-paste e OLE (Object Linking and Embedding) para copiar dados e ligação entre os programas.
  • Mesclar dados de tabelas de acesso a cartas do Microsoft Word, etiquetas, envelopes ou outros relatórios, usando o Word Mail recurso Mesclar. (Procurar o sistema de Ajuda do Word para fundem.)

Se você está apenas olhando para obter dados do Access para outro programa (ou vice-versa), escrevendo código não é provavelmente a abordagem mais fácil. Qualquer uma das abordagens anteriores são mais fáceis do que escrever código personalizado VBA para fazer o trabalho.

Claro, uma vez em uma lua azul proverbial, você se deparar com uma situação em que escrever código VBA é a única, ou talvez apenas o melhor, maneira de começar o trabalho feito. Este artigo mostra alguns conceitos básicos que você vai querer entender.

Carregando os modelos de objetos apropriados

O modelo de objeto Access fornece um meio de se referir a objetos pelo nome de modo que você pode manipular esses objetos usando o código VBA. Cada programa aplicativo do Office que se expõe a VBA tem um modelo de objeto, assim como acesso faz. Depois de biblioteca de objeto de um programa de aplicação está disponível, você pode usar VBA para controlar essa aplicação.

A modelo de objeto define os nomes e organização de objetos no aplicativo. Uma biblioteca de objetos é o arquivo real que está armazenado no disco rígido e define que o modelo de objeto conceitual.

Antes de escrever código para controlar uma aplicação externa a partir do Access, você precisa carregar a biblioteca objeto apropriado na caixa de diálogo referências no Access. Siga esses passos:

1. Certifique-se de que você está no Editor do Visual Basic.

Pressione Alt + F11 se você estiver na janela do programa Access.

2. Escolha Ferramentas -> referências a partir do menu Visual Basic Editor.

A caixa de diálogo referências é aberta.

3. Percorra a lista de referências disponíveis e selecione as bibliotecas de objetos para os programas que você deseja controlar.

Na Figura 1, as bibliotecas de objetos selecionados são para Access, Excel, Outlook, PowerPoint e Word (entre outros).


Figura 1: Várias bibliotecas de objetos selecionados na caixa de diálogo Referências.

4. Clique em OK.

Todas as bibliotecas de objetos selecionados serão abertos, e você tem acesso a todos os seus modelos de objetos a partir deste ponto.

Descarga bibliotecas de objetos

Carregando mais bibliotecas de objetos do que o necessário é um desperdício porque os programas VBA ficar mais lento. Na vida real, você raramente precisa selecionar todas as bibliotecas de objectos disponíveis (veja a Figura 1) a menos que você realmente a intenção de interagir com todos os programas a partir do banco de dados atual.

Você pode descarregar bibliotecas tão facilmente como você carregá-los. Abra a caixa de diálogo referências e desmarque a marca de seleção ao lado de qualquer biblioteca de objetos que você realmente não pretende usar.

Explorando modelo de objeto de um programa

O localizador de objectos no Editor do Visual Basic fornece acesso a todos os modelos de objetos atualmente selecionados na caixa de diálogo referências. Cada modelo objeto carregado contém muitos objetos, classes, propriedades e tal. Mas para automação, você principalmente querer olhar para Application Object de cada programa. Por exemplo, o Application Object Access expõe acesso a outros programas que suportam Automation. O objeto do aplicativo Excel (contido dentro da biblioteca objeto Excel) expõe Excel a outros programas de automação e assim por diante.

Para abrir o localizador de objectos no Editor VBA, escolha Exibir -> Object Browser ou pressione F2. Para obter ajuda com um item no localizador de objectos, clique em seu nome, em seguida, clique no botão Ajuda (?) Na barra de ferramentas Pesquisador de objetos.

Quando você escolhe da lista Project / Library no Objeto Brower e role para baixo a lista de Classes na coluna da esquerda, você vê vários objetos Aplicativo. Quando você clica em um dos objetos da aplicação, o nome do aplicativo aparece para baixo na parte inferior da caixa de diálogo. Os membros de objecto de aplicação que são exibidas no painel à direita, como mostrado na Figura 2.


Figura 2: O localizador de objectos após a adição de várias bibliotecas de objetos.

Definir referências a outros programas

Com modelos de objeto carregado, você está pronto para começar a criação de referências a programas disponíveis em código VBA. O primeiro passo é usar uma instrução Dim para criar uma variável de objeto que se refere à aplicação para a qual deseja se conectar, usando a seguinte sintaxe:

anyName Dim Como [New] program.Application

Na sintaxe, qualquer nome é o nome que quiser, para ser usado dentro de seu código para se referir à aplicação. o programa argumento é o nome oficial do programa de automação. A nova palavra-chave é opcional. Se incluídos, o New palavra-chave abre uma cópia do aplicativo em segundo plano (não necessariamente visíveis na tela) antes do código é executado.

Alguns exemplos de instruções Dim são os seguintes:

Dim appExcel As New Excel.Application
Dim appOutlook As New Outlook.Application
Dim appPowerPoint As New PowerPoint.Application
Dim appWord As New Word.Application

Uma declaração Dim é válida apenas se a biblioteca objeto apropriado é carregado. Por exemplo, o Dim appWord As New Word.Application declaração falhará se a biblioteca de objetos para o Microsoft Word não está seleccionada na caixa de diálogo referências.

As instruções Dim meramente criar variáveis ​​de objeto que se referem à aplicação de dentro de seu código. Para realmente fazer a ligação ao objecto de aplicação de um aplicativo, você precisa definir o nome variável de objeto para a aplicação. A sintaxe é

Definir objectVariable Como CreateObject ( "appName.Application")

Onde objectVariable é o mesmo que o nome especificado na instrução Dim, e nome do aplicativo é o nome do programa de aplicação. Referindo-se às declarações anteriores Dim, o conjunto de declarações que você usa para cada variável de objeto definido são as seguintes:

Definir appExcel = CreateObject ( "Excel.Application")
Definir appOutlook = CreateObject ( "Outlook.Application")
Definir appPowerPoint = CreateObject ( "PowerPoint.Application")
Definir appWord = CreateObject ( "Word.Application")

Cada aplicação do pacote Office tem seu próprio modelo de objeto com seus próprios objetos e propriedades, mas as idéias básicas são as mesmas independentemente de qual programa e modelo de objeto que você usa.

menu