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
Starten Sie ein neues Projekt in Visual Basic. Form1 wird standardmäßig erstellt.
Platzieren Sie ein CommandButton-Objekt in Form1.
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
Starten Sie Microsoft Excel. Book1 wird standardmäßig erstellt.
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".
Geben Sie in Modul1 den folgenden Code ein:
Sub Proc(sParam1 As String, iParam2 As Integer) MsgBox sParam1 & " is " & iParam2 & " Years Old" End Sub
Lassen Sie die Arbeitsmappe in Microsoft Excel geöffnet, und wechseln Sie zu Ihrem Projekt in Visual Basic.
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