Como chamar macros do Microsoft Excel que assiram parâmetros

Resumo

Ao utilizar a Automatização, pode manipular o Microsoft Excel. É possível chamar procedimentos de macro que estão armazenados em Livros do Microsoft Excel ao utilizar o método Executar do objeto Microsoft Excel Application. Os procedimentos de macro do Microsoft Excel que assiram parâmetros causam uma ligeira alteração na sintaxe. Abaixo, é incluído um exemplo de código que mostra como chamar um procedimento de macro do Microsoft Excel a partir do Visual Basic.

Mais Informações

Exemplo Passo a Passo

  1. Inicia um novo Project no Visual Basic. O formulário1 é criado por predefinição.

  2. Colocar um BotãoDe Comando no Formulário1.

  3. Na secção Declarações Gerais do Formulário1, introduza este código:

          Option Explicit
    
    Private Sub Command1_Click()
           Dim oExcelApp As Object
    
    ' Create a reference to the currently running excel application
           Set oExcelApp = GetObject(, "Excel.application")
           ' Make the Excel Application Visible.
           oExcelApp.Visible = True
           ' Run the excel procedure
           oExcelApp.run "proc", "David", 30
          End Sub
    
  4. Inicie o Microsoft Excel. O Livro1 é criado por predefinição.

  5. Adicionar um novo módulo ao livro.

    Para o Excel 5.0 e 7.0: no menu Inserir, selecione Macro e selecione a Opção do Módulo. Desta forma, terá uma nova folha de módulos, o Módulo1.

    Para o Excel 97 e posterior: Prima Alt+F11 para iniciar o Visual Basic Editor. Clique em Módulo no menu Inserir.

  6. No Módulo1, escreva o seguinte código:

    Sub Proc(sParam1 As String, iParam2 As Integer)
            MsgBox sParam1 & " is " & iParam2 & " Years Old"
          End Sub
    
  7. Deixe o livro aberto no Microsoft Excel e mude para o seu projeto no Visual Basic.

  8. A partir do Visual Basic, prima F5 para executar o projeto. Clique no botão de comando e deverá ver uma caixa de diálogo com o texto "O David tem 30 anos" na mesma.

Referências

Para obter mais informações sobre como utilizar o Visual Basic para Automatizar o Excel, consulte o seguinte:

219151 Como Automatizar o Microsoft Excel a partir do Visual Basic