Como criar suplementos de COM do Office usando o VBA e o Office Developer

Traduções deste artigo Traduções deste artigo
ID do artigo: 306130 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve como exibir um UserForm agradece você ao iniciar o Microsoft Excel ou Microsoft Word. Suplementos de modelo de objeto (COM) de componente fornecem um meio para centralizar o código comum em uma biblioteca compilado de vínculo dinâmico (DLL) que pode ser facilmente implementada em qualquer Office aplicativo (por exemplo, você pode acessar Contatos do Microsoft Outlook partir do Excel, Word e Microsoft Access). A maneira mais fácil desenvolver uma DLL de COM no Microsoft Office é trabalhar com um projeto add-in, que fornece um designer e uma referência à biblioteca IDTExtensibility2 .

Requisitos

Este artigo pressupõe que você esteja familiarizado com os seguintes tópicos:

  • Criando o Visual Basic para Applications (VBA) procedimentos em um aplicativo do Office XP.
  • Trabalhando com UserForms no VBA.
  • Personalizando barras de ferramentas do Office.

Criar um projeto de suplemento

Você pode criar um projeto add-in em qualquer aplicativo do Microsoft Office 2000 ou o Microsoft Office XP quando você tem o Microsoft Office Developer 2000 ou Microsoft Office XP Developer ferramentas instaladas. Este exemplo usa o Microsoft Word 2002.
  1. Inicie o Microsoft Word 2002.
  2. No menu Ferramentas , aponte para macro e, em seguida, clique em Editor do Visual Basic .
  3. No Visual Basic Editor (VBE), clique em New Project no menu arquivo .
  4. Na caixa de diálogo New Project , clique em Add-In Project . Isso fornece automaticamente um criador de suplementos.
  5. Se a janela Propriedades não estiver visível, clique em Janela de propriedades no menu Exibir .
  6. Na janela Properties, renomeie o projeto de AddInDesigner1 para WelcomeAddIn.
  7. No menu Inserir , clique em UserForm para inserir um UserForm.
  8. Da caixa de ferramentas, adicione um rótulo e um botão de comando para o formulário de usuário.
  9. Na janela Propriedades, altere os atributos dos controles para coincidir com os valores na tabela a seguir:
    Recolher esta tabelaExpandir esta tabela
    controle Propriedades valor
    RótuloNomelblMessage
    LegendaBem-vindo
    Fonte14pt
    AutoSizeTrue
    CommandButtonNomecmdOK
    LegendaOK
    UserFormNomefrmWelcome

  10. No menu Inserir , clique em módulo para inserir um módulo padrão.
  11. Adicione a seguinte declaração de variável global seqüência ao módulo padrão:
    Public gstrUserName As String
    'This variable will be used to store the name of the user as defined
    'in the Options dialog boxes (from the Tools menu) in Word and Excel.
    					
  12. No módulo, adicione o seguinte código para criar um procedimento Sub público denominado DisplayForm para exibir o formulário na tela:
    Public Sub DisplayForm()
      frmWelcome.Show vbModal
    End Sub
    					
  13. Exibir a janela de código para o formulário frmWelcome e adicione o seguinte código ao evento UserForm_Initialize para concatenar a legenda do rótulo com a variável de seqüência de caracteres:
    lblMessage.Caption = lblMessage.Caption & " " & gstrUserName
    					
  14. Adicione o seguinte código ao evento Click de CommandButton cmdOK descarregar o formulário:
    Unload me
    					

Alterar as propriedades do Designer suplemento

Siga estas etapas para alterar as propriedades do designer para que o suplemento seja iniciada assim que o Microsoft Excel é iniciado:
  1. No Project Explorer, clique duas vezes no componente para retornar para o criador de suplementos.
  2. Na guia Geral do designer, altere as propriedades do designer para coincidir com os valores na tabela a seguir:
    Recolher esta tabelaExpandir esta tabela
    propriedade valor
    Nome para exibição addInFunFormMessage
    Descrição de addInIsso contém código que é específico para Excel
    AplicativoMicrosoft Excel
    Versão do aplicativoMicrosoft Excel 10.0
    Comportamento de carregamento inicialInicialização

Implementar eventos IDTExtensibility2

  1. No menu Exibir , clique em código para exibir o módulo de código por trás do designer.
  2. No menu Ferramentas , clique em referências e definir uma referência ao Microsoft Excel biblioteca.
  3. Na lista drop-down de objetos , clique em AddinInstance . Na lista drop-down procedimento , clique em OnConnection .

    Este evento é útil para criar um botão CommandBar ou associar código com um evento como um evento do aplicativo quando o add-in está conectado ao aplicativo host.
  4. Adicione o seguinte código ao procedimento de evento AddinInstance_OnConnection para armazenar o nome de usuário na variável global strUserName e chamar o procedimento DisplayForm :
    gstrUserName = Application.UserName
    DisplayForm
    					
  5. No VBE, clique em Salvar e nomeie o projeto Welcome.vba.

Adicionar um segundo Designer

Este procedimento, você adiciona um segundo designer para implementar a mesma funcionalidade no Microsoft Word.
  1. Crie projeto de suplemento outro do VBE. AddInProject2 é criado por padrão.
  2. No Explorador de projeto, arraste a adicionar nova - no Designer de interface ( AddInDesigner1 ) em seu projeto add-in existente. Haverá duas designers no projeto.
  3. No Explorador de projeto, clique com o botão direito do mouse AddInProject2 e clique em Close Project para remover o projeto que você acabou de criar.
  4. Quando você receber a seguinte mensagem ou semelhante
    Projeto AddInProject2 foi modificada. Você deseja salvá-lo?
    Clique em não .
  5. Altere as propriedades para o designer para especificar o Word 10 como o aplicativo de destino e para carregar na inicialização .
  6. Adicione o seguinte código ao procedimento de evento AddinInstance_OnConnection do novo designer de Word, é o mesmo que o código escrito anteriormente para OnConnection evento do designer Excel:
    gstrUserName = Application.UserName
    DisplayForm
    					

Depurar o suplemento

  1. Se você preferir, adicione pontos de interrupção apropriados ao código.
  2. No VBE, clique em Executar Project no menu Executar para executar o suplemento.
  3. Inicie o Microsoft Excel. Quando o projeto é iniciado, você poderá ver uma caixa de diálogo para o criador de AddIn. Clique na opção para iniciar um aplicativo e navegue até Excel.exe. Se esta caixa de diálogo não aparecer, clique em Iniciar , aponte para programas e, em seguida, clique em Microsoft Excel para iniciar o Excel. O UserForm deve aparecer.
  4. Se o Gerenciador de suplementos COM já não estiver disponível, adicione o comando Suplementos de COM para uma barra de ferramentas da seguinte maneira:
    1. No menu Ferramentas , clique em Personalizar .
    2. Na caixa de diálogo Personalizar , na guia comandos , arraste o comando Suplementos de COM da categoria Ferramentas para uma barra de ferramentas ou para o objeto de CommandBarPopup do menu Ferramentas .
  5. Clique na barra de comando Suplementos de COM para exibir COM Add-In Manager (CAM). A lista no CAM exibe todos os suplementos são carregados.
  6. Para testar o evento OnConnection , desmarque a tela de boas-vindas do Add-in caixa de seleção o CAM e, em seguida, clique em OK . Reexibir o CAM, selecione a caixa de seleção Bem-vindo e, em seguida, clique em OK . O formulário de usuário deve aparecer novamente.
  7. Feche o aplicativo de host (Word ou Excel) e clique em Parar Project no menu Executar do VBE para parar a execução o projeto.

Verificar se o suplemento funciona

Agora você pode compilar o suplemento e verificar se ele funciona em outro computador.
  1. Salve o projeto do VBE. Esta é sua versão editável. O estado compilado não permite que você faça modificações.
  2. No menu arquivo , clique em Criar Welcome.DLL .
  3. Use o comando regsvr32 para registrar a DLL da seguinte maneira:
    1. A partir do menu Iniciar , clique em Executar .
    2. Na caixa de texto Abrir , digite o seguinte texto:
      regsvr32 < caminho > \Welcome.DLL
      onde < caminho > é o caminho para a DLL do sistema de arquivos.
  4. Clique em OK para confirmar o registro da DLL.
  5. Excel execução e/ou Word. O UserForm deve aparecer. Se você não vir o UserForm, clique em COM AddIns no menu ' Ferramentas ' e marque a caixa de seleção Bem-vindo .
Observação : A maneira mais fácil para distribuir a DLL é usar o Package and Deployment Wizard.

Solução de problemas

  • Certifique-se de que você escrever um código curto e eficiente para quando o suplemento é carregado na memória. Por exemplo, se o seu evento OnConnection manipula dados de banco de dados na inicialização, os usuários irão achar que o computador parou de responder (travou).
  • Tenha cuidado ao usar UserForms. Se o usuário clica no aplicativo host, o usuário pode achar que ele perdeu o formulário porque ele é oculto por trás do aplicativo host. Em vez disso, os formulários tornar modal para superar esse problema. Para tornar um formulário modal, use a constante vbModal da seguinte maneira:
    frmMyUserForm.Show vbModal
    						
    para ver onde esse código se encaixa na referência a esse exemplo, consulte o código na etapa 12 da seção Create an Add-In Project.

Referências

Consulte a \Samples\Working com AddIns\VBA_COM_AddIn pasta no Office XP Developer CD para um modelo AddIn.

Para obter informações adicionais sobre como criar botões de CommandBar, visite o seguinte site da Web Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/en-us/library/aa140930.aspx

Propriedades

ID do artigo: 306130 - Última revisão: quarta-feira, 14 de julho de 2004 - Revisão: 4.5
A informação contida neste artigo aplica-se a:
  • Microsoft Office XP Developer Edition
  • Microsoft Office XP Professional
Palavras-chave: 
kbmt kbhowtomaster KB306130 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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 306130

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