Microsoft Excel-macro's aanroepen die parameters aannemen
Samenvatting
Met Automation kunt u Microsoft Excel bewerken. Het is mogelijk om macroprocedures aan te roepen die zijn opgeslagen in Microsoft Excel-werkmappen met behulp van de methode Uitvoeren van het Microsoft Excel-toepassingsobject. Microsoft Excel-macroprocedures die parameters aannemen, veroorzaken een kleine wijziging in de syntaxis. Hieronder ziet u een codevoorbeeld dat laat zien hoe u een Microsoft Excel-macroprocedure aanroept vanuit Visual Basic.
Meer informatie
Stapsgewijze voorbeeld
Start een nieuw project in Visual Basic. Form1 wordt standaard gemaakt.
Plaats een CommandButton op Form1.
Voer in de sectie Algemene declaraties van Formulier1 de volgende code in:
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
Start Microsoft Excel. Boek1 wordt standaard gemaakt.
Voeg een nieuwe module toe aan de werkmap.
Voor Excel 5.0 en 7.0: Kies Macro in het menu Invoegen en selecteer de moduleoptie. Hiermee krijgt u een nieuw moduleblad, Module1.
Voor Excel 97 en hoger: Druk op Alt+F11 om Visual Basic Editor te starten. Klik op Module in het menu Invoegen.
Typ in Module1 de volgende code:
Sub Proc(sParam1 As String, iParam2 As Integer) MsgBox sParam1 & " is " & iParam2 & " Years Old" End Sub
Laat de werkmap geopend in Microsoft Excel en schakel over naar uw project in Visual Basic.
Druk in Visual Basic op F5 om het project uit te voeren. Klik op de opdrachtknop en er wordt een dialoogvenster weergegeven met de tekst 'David is 30 jaar oud'.
Verwijzingen
Zie het volgende voor meer informatie over het gebruik van Visual Basic om Excel te automatiseren:
219151 Microsoft Excel automatiseren vanuit Visual Basic