Aufrufen von Microsoft Excel-Makros mit Parametern

Zusammenfassung

Mithilfe der Automatisierung können Sie Microsoft Excel bearbeiten. Mithilfe der Run-Methode des Microsoft Excel-Anwendungsobjekts können Makroproxeduren aufgerufen werden, die in Microsoft Excel-Arbeitsmappen gespeichert sind. Microsoft Excel-Makroprozeduren, die Parameter verwenden, führen zu einer geringfügigen Änderung der Syntax. Unten sehen Sie ein Codebeispiel, das zeigt, wie Sie eine Microsoft Excel-Makroprozedur aus Visual Basic aufrufen.

Weitere Informationen

Schritt-für-Schritt-Beispiel

  1. Starten Sie ein neues Projekt in Visual Basic. Form1 wird standardmäßig erstellt.

  2. Platzieren Sie ein CommandButton-Objekt in Form1.

  3. Geben Sie im Abschnitt "Allgemeine Deklarationen" von Form1 den folgenden Code ein:

          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. Starten Sie Microsoft Excel. Book1 wird standardmäßig erstellt.

  5. Fügen Sie der Arbeitsmappe ein neues Modul hinzu.

    Für Excel 5.0 und 7.0: Wählen Sie im Menü "Einfügen" die Option "Makro" und dann die Moduloption aus. Dadurch erhalten Sie ein neues Modulblatt, Modul1.

    Für Excel 97 und höher: Drücken Sie ALT+F11, um den Visual Basic-Editor zu starten. Klicken Sie im Menü "Einfügen" auf "Modul".

  6. Geben Sie in Modul1 den folgenden Code ein:

    Sub Proc(sParam1 As String, iParam2 As Integer)
            MsgBox sParam1 & " is " & iParam2 & " Years Old"
          End Sub
    
  7. Lassen Sie die Arbeitsmappe in Microsoft Excel geöffnet, und wechseln Sie zu Ihrem Projekt in Visual Basic.

  8. Drücken Sie in Visual Basic F5, um das Projekt auszuführen. Klicken Sie auf die Befehlsschaltfläche, und es sollte ein Dialogfeld mit dem Text "David ist 30 Jahre alt" darin angezeigt werden.

References

Weitere Informationen zur Verwendung von Visual Basic zum Automatisieren von Excel finden Sie in den folgenden Themen:

219151 So automatisieren Sie Microsoft Excel aus Visual Basic