OFF: Como utilizar a automatização (OLE) com o Word

Traduções de Artigos Traduções de Artigos
Artigo: 184974 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo contém uma breve descrição e uma macro de exemplo com detalhes sobre como automatizar o Microsoft Word a partir de outro programa. Para obter informações mais detalhadas, consulte a subsecção "Referências" no fim deste artigo.

Mais Informação

Microsoft fornece exemplos de programação ilustração só, sem garantia expressa ou implícita, incluindo, sem limitação, garantias implícitas de comercialização e/ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação apresentada e as ferramentas utilizadas para criar e depurar procedimentos. Profissionais de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas.
Se dispõe de limitada experiência de programação, poderá contactar um Microsoft Certified Partner ou a serviços de aviso. Para obter mais informações, visite estes Web sites da Microsoft:

Microsoft certificado Partner - https://partner.microsoft.com/global/30000104

Serviços Microsoft aviso - http://support.microsoft.com/gp/advisoryservice

Para obter mais informações sobre as opções de suporte estão disponíveis e sobre como contactar a Microsoft, visite o seguinte Web site da Microsoft: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS
Automatização (anteriormente automatização OLE) é uma funcionalidade que os programas utilizam para expor os respectivos objectos a ferramentas de desenvolvimento, linguagens de macros e outros programas que suportam automatização. Por exemplo, um programa de folha de cálculo pode expor uma folha de cálculo, gráfico, célula ou intervalo de células, cada deles como um tipo de objecto diferente. Um processador de texto pode expor objectos tais como uma aplicação, um documento, um parágrafo, uma frase, um marcador ou uma selecção.

Quando um programa suporta automatização, pode utilizar o Visual Basic for Applications para acessar os objetos que expõe. Manipular estes objectos no Visual Basic invocando métodos no objecto ou obter e definindo as propriedades do objecto.

Pode utilizar os exemplos de código neste artigo para controlar o Microsoft Word a partir de Microsoft Access 97, Microsoft Excel 97, Microsoft PowerPoint 97, Microsoft Visual Basic for Applications ou qualquer outro cliente que suporte automatização para controlar o Word.

Introdução

Existem quatro passos principais para automatizar o Word para Windows.
  1. Adicione uma referência à biblioteca do objecto do Microsoft Word 8.0.
  2. Declare uma variável como um tipo de objecto do Word.
  3. Atribua o objecto devolvido pela função CreateObject à variável de objecto que declarou no passo 2.
  4. Utilize as propriedades e métodos da variável de objecto para automatizar o Word.

Passo 1: Adicionar uma referência para o Word 8.0 Object Library

Para adicionar uma referência para o Microsoft Word 8.0 Object Library com o Microsoft Access 97, Microsoft PowerPoint 97 ou Microsoft Excel 97, siga estes passos:
  1. No Microsoft Access, PowerPoint ou Excel, no menu Ferramentas , aponte para macro e, em seguida, clique em Editor do Visual Basic .
  2. No Editor do Visual Basic, no menu Ferramentas , clique em referências .
  3. Na lista de Referências disponíveis , clique para seleccionar a caixa de verificação (verificação) do Microsoft Word 8.0 Object Library .
Nota : para adicionar a referência utilizando o Microsoft Visual Basic 5.0, clique em References no menu Project .

Adicionar o Microsoft Word 8.0 Object Library referência permite que o programa aceder a ajuda online do Microsoft Word e o Microsoft Word Visual Basic for Applications constantes, propriedades e métodos. Tenha em atenção que a referência do Word 8.0 Object Library é necessária para automatizar os tipos de objecto do Word directamente.

Adicionar uma referência para o Word 8.0 Object Library é designado por ligação antecipada.

Para obter mais informações sobre o enlace inicial, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
138138INFO: Mais tarde, ID, com antecipação ligação tipos possível no VB para aplicações

Passo 2: Declarar a variável de objecto

Para declarar uma variável de objecto, a dimensão a variável tal como dimensão qualquer variável excepto que especificar o tipo quando declarar o objecto. Por exemplo, Word.Application , documentos e parágrafo são objectos do Word separado.

A seguinte linha de comandos de exemplo declara a variável objWD como um objecto do tipo Word.Application :

   Dim objWD as Word.Application

				

Passo 3: Definir a variável

Existem duas funções do Visual Basic que pode utilizar para "associar" a variável de objecto já declarada para o Word: CreateObject e GetObject . As principais diferenças são que a função CreateObject cria uma nova instância do Word, enquanto que a função GetObject utiliza um já existente ou instância já em execução do Word. Pode também utilizar GetObject para associar a variável de objecto para um determinado documento do Word.

As exemplo comandos linhas de seguem associam a variável objWD ao Word utilizando a função CreateObject :

   Dim objWD as Word.Application
   Set objWD = CreateObject("Word.Application")

				
as linhas exemplo seguem comandos associam a variável objWdDoc a um determinado documento do Word:
   Dim objWdDoc As Word.Document
   Set objWdDoc = GetObject("c:\my documents\doc1.doc")
				
Nota : recomenda-se utilizar apenas a função CreateObject para automatizar o Word para Windows. A função GetObject pode provocar um comportamento imprevisível se estiver a executar o WordMail ou se um documento do Word estiver incorporado dentro de outro programa.

Para mais informações sobre como obter ajuda com o Visual Basic for Applications, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
185232WD97: Erro mensagem utilizando o WordMail: 'Este método ou propriedade não está disponível'

Passo 4: Utilizar propriedades e métodos para automatizar o Word

Quando concluir os passos 1 a 3, pode utilizar a variável de objecto para automatizar o Word.

A macro de exemplo seguinte utiliza a automatização para criar um objecto do Word, criar um novo documento, adicionar texto e guarde o documento.
Sub AutomateWord()
   ' Declare the variable.
   Dim objWD As Word.Application
   ' Set the variable (runs new instance of Word.)
   Set objWD = CreateObject("Word.Application")
   ' Add a new document.
   objWD.Documents.Add
   ' Add some text.
   objWD.Selection.TypeText "This is some text."
   ' Save the document.
   objWD.ActiveDocument.SaveAs filename:="mydoc.doc"
   ' Quit Word.
   objWD.Quit
   ' Clear the variable from memory.
   Set objWD = Nothing
End Sub
				
Nota : A seguinte macro de exemplo duplica o processo descrito na macro AutomateWord e é executado directamente no Word:
Sub WordMacro()
   Documents.Add
   Selection.TypeText "This is some text"
   ActiveDocument.SaveAs filename:="mydoc.doc"
   Quit
End Sub
				

Referências

Para mais informações específicas para automatizar o Word utilizando o Visual Basic for Applications, consulte os seguintes recursos.

Web site do Microsoft Office Developer

http://www.msdn.microsoft.com/office

Guia do programador Microsoft Office 97/Visual Basic

Utilizar a automatização no capítulo objectos do Microsoft Word do manual do Microsoft Office 97/Visual Basic Programmer (ISBN: 1-57231-340-4).

- ou -

Consulte o manual online em:
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/office97/html/web/fulltoc.asp

Newsgroups

Os newsgroups peer-to-peer seguintes estão disponíveis para o ajudar a interagir com outros utilizadores do Visual Basic for Applications:
Microsoft.public.Word.VBA.Addins
Microsoft.public.Word.VBA.Beginners
Microsoft.public.Word.VBA.Customization
Microsoft.public.VB.OLE.Automation

Base de dados de conhecimento

Para mais informações sobre como obter ajuda com o Visual Basic for Applications, consulte os seguintes artigos na base de dados de conhecimento da Microsoft:
163435VBA: Recursos de programação do Visual Basic for Applications

173707OFF97: Como executar códigos de exemplo a partir de artigos da base de dados de conhecimento da Microsoft

163425WD97: Recursos de programação de macro

Assistente do Office

Para obter mais informações sobre automatização, no Editor do Visual Basic, faça clique sobre o Assistente do Office, escreva " automatização ", clique em Procurar e, em seguida, clique aqui para visualizar "Communicating com outras aplicações."

Nota : Se o assistente estiver oculto, clique no botão Assistente do Office na barra de ferramentas padrão. Se o assistente não conseguir responder à consulta, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
176476OFF: Assistente do Office não atendimento frequentes do Visual Basic

Propriedades

Artigo: 184974 - Última revisão: 22 de janeiro de 2007 - Revisão: 4.3
A informação contida neste artigo aplica-se a:
  • Microsoft Excel 97 Standard Edition
  • Microsoft Word 97 Standard Edition
  • Microsoft Visual Basic for Applications 5.0
Palavras-chave: 
kbmt kbdtacode kbhowto kbinterop kbprogramming KB184974 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 184974
Exclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com