Subroutines en macro's uitvoeren vanuit Visual Basic in Excel 2000 of Excel 2002

Artikel ID: 213837 - Bekijk de producten waarop dit artikel van toepassing is.

Voor een Microsoft Excel 97-versie van dit artikel, Zie108519.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Samenvatting

In Microsoft Excel, kunt u Microsoft Visual Basic uitvoeren ToepassingenSubprocedures en macro's uit een visuele Microsoft Excel versie 4. 0 Basis procedure met behulp van deRunenApplication.ExecuteExcel4Macromethoden. U kunt ook Visual Basic uitvoerenSubprocedures met hetOproepmethode of door de naam van een procedure op een lijn door zelf.

Dit artikel illustreert verschillende methoden die u kunt uitvoerenSubprocedures en macro's uit Visual Microsoft Excel versie 4. 0 Basic in Microsoft Excel.

Meer informatie

Microsoft biedt program meer voorbeelden ter illustratie alleen, zonder garantie of impliciete, met inbegrip van maar niet beperkt tot, de impliciete garanties van verkoopbaarheid en/of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeer taal worden opgespoord en de hulp programma's en procedures voor fout opsporing. Microsoft support professionals kunnen helpen verklaren de functionaliteit van een bepaalde procedure, maar ze zal niet deze voorbeelden om extra functionaliteit of samens tellen van procedures om te voldoen aan uw specifieke behoeften aanpassen.
Als u zoveel program meer ervaring hebt, kunt u contact opnemen met een Microsoft Certified Partner of Microsoft Advisory Services. Meer informatie vindt u op deze Microsoft-websites:

Microsoft Certified Partners-https://partner.Microsoft.com/Global/30000104

Microsoft Advisory Services-http://support.Microsoft.com/gp/advisoryservice

Ga naar de volgende Microsoft-website voor meer informatie over de ondersteuningsopties die beschikbaar zijn en hoe u contact kunt opnemen met Microsoft:http://support.Microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Methode 1: Run

U kunt deRunmethode voor het uitvoeren van Visual BasicSubprocedures of macro's uit andere Microsoft Excel versie 4. 0 Visual Basic-procedures. HetRunmethode vereist een benoemd argument: de naam van de macro ofSubde procedure moet worden uitgevoerd. (Echter andere optionele argumenten kunnen ook worden opgenomen.) Deze naam kan een tekenreeks (bijvoorbeeld "TestXLM") of kan een variabele die gelijk is aan de naam van de macro zijn.

Case 1: Tekenreeks

Voor het uitvoeren van een Microsoft Excel versie 4. 0 macro met de naam TestXLM, u Deze tekenreeks gebruiken:
Application.Run "TestXLM"
				

Case 2: variabel

Als u de variabele "macrotorun" ingesteld op 'testxlm' hebt, kan u Gebruik deze variabele:
Application.Run MacroToRun
				

Methode 2: Application.ExecuteExcel4Macro

U kunt ook deApplication.ExecuteExcel4Macromacro's uitvoeren Microsoft Excel versie 4. 0 of andere visuele methode BasisSubprocedures, maar de syntaxis is iets anders. GebruikApplication.ExecuteExcel4Macroeen macro uitvoeren ofSubprocedure, moet u ook Microsoft Excel versie 4. 0UITVOEREN() functie, zoals in de volgende voorbeelden:
Application.ExecuteExcel4Macro "RUN(""TestXLM"")"
				
  -or-
				
Application.ExecuteExcel4Macro "RUN(""" & MacroToRun & """)"
				
Wanneer u gebruiktApplication.ExecuteExcel4Macro, moet u aanhalings tekens gebruiken. Bijvoorbeeld: gebruik deUITVOERENfunctie (), moet u de naam van het argument tussen aanhalings tekens:
RUN("TestXLM")
				
Vervolgens moet de hele teken reeks tussen aanhalings tekens. Wanneer u aanhalings tekens toevoegen aan de buitenzijde van de teken reeks moet u toevoegen een extra aanhalings teken naast elk aanhalings teken in de teken reeks:
"RUN(""TestXLM"")"
				
HetApplication.ExecuteExcel4Macroopdracht gebruikt met een variabele binnen deUITVOEREN() functie is complexer dan het equivalentRunmethode. De opdracht correct worden geëvalueerd, de macro teken reeks moet worden ingevoerd als:
"RUN(""" & MacroToRun & """)"
				
Met deze opdracht wordt geëvalueerd als
RUN("" & MacroToRun & "")
				
dat is een geldige Microsoft Excel versie 4. 0 macro-opdracht.

: 3 De aanroep methode

HetOproepmethode kan worden gebruikt voor het uitvoeren van Visual BasicSubprocedures, maar geen macro's van Microsoft Excel versie 4. 0. Voor voorbeeld uit te voeren deSubprocedureTestVBSub, gebruikt u deze methode:
Call TestVBSub
				
U niet de naam van een variabele wilt doorgeven deOproepmethode. Bijvoorbeeld, als u de variabele "SubToRun" ingesteld op "testvbsub", kunt u niet uitvoeren deTestVBSub Submet de volgende procedure:
Call SubToRun
				

Methode 4: Voer een Sub-Procedure met alleen de naam

U kunt een Visual Basic uitvoerenSubprocedure door de naam op een lijn zelf. Bijvoorbeeld: Als u uwSubprocedure voor het uitvoeren van deTestVBSubde subroutine, typt u
TestVBSub
				
op een lijn door zelf. Wanneer deze regel in de subroutine wordt uitgevoerd, wordt wordt uitgevoerd deTestVBSubde subroutine.

Methode 5: Voorbeeld Visual Basic-Procedures

Zes makenSubprocedures die u kunt veelgebruikte methoden te illustreren een Visual Basic uitvoerenSubprocedure of macro vanuit een andere Microsoft Excel versie 4. 0 Visual Basic-procedure als volgt:
  1. Invoegen in een nieuwe werkmap een macroblad van Microsoft Excel 4. 0 naam 'Macro 1 en een Visual Basic-module Module1 genoemd.

    OPMERKING: Om een Visual Basic-module in Microsoft Excel wilt invoegen, drukt u op ALT + F11 om de Visual Basic Editor te activeren. Klik vervolgens opModuleop deInvoegenmenu.
  2. Voer de volgende macro in de macroblad:
         
    A1: TestXLM
    A2: =ALERT("TestXLM works!")
    A3: =RETURN()
    						
    Deze macro wordt een waarschuwings venster weer gegeven.
  3. Selecteer cel A1 in het macro venster.
  4. Op deInvoegenhet menuNaam, en klik vervolgens opDefiniëren.
  5. Controleer of de volgende informatie wordt weer gegeven in deNaam definiërendialoog venster:

      • HetNamen In werkmapvak bevat de naam TestXLM.
      • HetVerwijst naarvak bevat de verwijzing = Macro1!$ A$ 1.
      • HetOpdrachtoptie is geselecteerd onderMacro.


    Wanneer de instellingen worden als hierboven, klik opOKdefinieert de naam van de macro.
  6. Voer de volgende subprocedures Module1, in:
     Option Explicit
    
     'The TestVBSub subroutine displays a message box: it is the Visual
     'Basic equivalent of the TestXLM macro shown above.
    
     Sub TestVBSub()
         MsgBox "TestVBSub works!"             'Displays a message box.
     End Sub
    
     'The Test1 Sub procedure makes use of the Application.Run method with
     'hard-coded macro/subroutine names.
    
     Sub Test1()
         Application.Run "TestVBSub"
         Application.Run "TestXLM"
     End Sub
    
     'The Test2 Sub procedure makes use of the Application.Run method with
     'variable macro/Sub procedure names.
    
     Sub Test2()
         Dim SubToRun As String, MacroToRun As String
         SubToRun = "TestVBSub"
         MacroToRun = "TestXLM"
         Application.Run SubToRun
         Application.Run MacroToRun
     End Sub
    
     'The Test3 Sub procedure makes use of the
     'Application.ExecuteExcel4Macro
     'method with hard-coded macro/Sub procedure names.
    
     Sub Test3()
         'Note the extra quotation marks which are contained within the
         'RUN statements. These are required in order for the command to
         'evaluate properly.
         Application.ExecuteExcel4Macro "RUN(""TestVBSub"")"
         Application.ExecuteExcel4Macro "RUN(""TestXLM"")"
     End Sub
    
     'The Test4 Sub procedure makes use of the
     'Application.ExecuteExcel4Macro
     'method with variable macro/Sub procedure names.
    
     Sub Test4()
         Dim SubToRun As String, MacroToRun As String
         SubToRun = "TestVBSub"
         MacroToRun = "TestXLM"
         'Note the extra quotation marks which are contained within the
         'RUN statements. These are required in order for the command to
         'evaluate properly.
         Application.ExecuteExcel4Macro "RUN(""" & SubToRun & """)"
         Application.ExecuteExcel4Macro "RUN(""" & MacroToRun & """)"
     End Sub
    
     'The Test5 Sub procedure uses the Call method with hard-coded
     'Sub procedure names.
    
     Sub Test5()
         Call TestVBSub
     End Sub
    
     'The Test6 Sub procedure runs the TestVBSub subroutine because its
     'name is entered on a line by itself.
    
     Sub Test6()
         TestVBSub
     End Sub
    
    					
Bij het uitvoeren van Test1, Test2, Test3 of Test4, twee waarschuwings vensters wordt weer gegeven met de berichten "TestVBSub works!" en "TestXLM werkt!" Wanneer u het uitvoeren van Test5 of Test6, een waarschuwings venster weer gegeven met het bericht "TestVBSub Works!"

Eigenschappen

Artikel ID: 213837 - Laatste beoordeling: dinsdag 20 september 2011 - Wijziging: 3.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2002 Standard Edition
Trefwoorden: 
kbmacro kbdtacode kbhowto kbprogramming kbmt KB213837 KbMtnl
Automatische vertaling
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:213837

Geef ons feedback