Excel VBA Me-functie

Alleen al door de naam VBA Me te zien, moeten mensen zich afvragen wat voor iets in VBA VBA Me wordt genoemd? Dit kwam ook bij me op toen ik deze eerste keer hoorde. VBA heeft een object genaamd ME dat wordt gebruikt in plaats van bovenliggende objecten. Dit lijkt een typische functie met complexe syntaxis. Maar geloof me, de syntaxis van VBA Me heeft misschien ook gezien en gebruikt. Hoewel, VBA Me wordt gebruikt in geavanceerde limiet en wordt niet gezien in reguliere opdrachten.

Ik weet dat, door tot nu toe te lezen, mensen nog steeds de vraag kunnen hebben: Wat is VBA Me? Laten we dit begrijpen op een zeer grondniveau taal. Overweeg jezelf in dit geval. We hebben allemaal een ander soort bijnaam gekregen sinds onze kindertijd, die 2 of meer kan zijn. Maar ze hebben allemaal één officiële en echte naam waarmee we door de rest van de wereld worden genoemd. Daarmee stellen we ons voor aan de rest van de mensen. Dus die echte naam zal ME zijn in het VBA Me-object dat kan worden gebruikt door soortgelijke andere identiteiten te vervangen. Dit voorbeeld kan ook op de tegenovergestelde manier worden begrepen.

Eerlijk gezegd heeft VBA Me geen gedefinieerde syntaxis. Dit wordt gebruikt als vervanging voor bovenliggende objecten.

Hoe de Excel VBA Me-functie te gebruiken?

Hieronder staan ​​de verschillende voorbeelden om de functie Mij in Excel VBA te gebruiken.

U kunt deze VBA Me Excel-sjabloon hier downloaden - VBA Me Excel-sjabloon

VBA Me - Voorbeeld # 1

VBA ME kan beide worden geïmplementeerd in module en blad. Maar we moeten opnieuw weten wanneer we wat moeten gebruiken. We kunnen VBA Me overal gebruiken. Het kan worden gebruikt in klasse of module. En Class heeft 2 modules, dwz module met gebruikersinterface en module zonder gebruikersinterface . Hier zien we de module met gebruikersinterface. Zoals gezegd zullen we dit in een module uitvoeren.

Hieronder staan ​​de verschillende stappen om de VBA Me-functie te gebruiken.

Stap 1: Voeg een nieuwe module in Visual Basic Editor (VBE) in. Klik op het tabblad Invoegen > selecteer Module.

Stap 2: Schrijf een subprocedure voor VBA ME zoals hieronder weergegeven.

Code:

 Sub VBA_Me () Einde Sub 

Stap 3: Selecteer eerst werkblad. Hier selecteren we het werkblad met de naam Blad1 .

Code:

 Sub VBA_Me () Werkbladen ("Sheet1") End Sub 

Stap 4: Selecteer nu de bereikcel waar we de uitvoerwaarde zullen zien. Laat die cel B2 zijn en de waarde "VBA Me" zoals hieronder wordt weergegeven.

Code:

 Sub VBA_Me () Werkbladen ("Sheet1"). Bereik ("B2"). Value = "VBA Me" End Sub 

Stap 5: Voer nu de code uit door op F5 te drukken of door op Play te klikken. We zullen zien dat de waarde wordt afgedrukt in cel B2.

Hier is het ME-object de naam van het werkblad dat we hebben geselecteerd met behulp van de functie Werkbladen. Dus nu zullen we dat door MIJ vervangen. Maar nogmaals, dit zal niet werken onder Module.

Stap 6: Ga naar het blad dat we hebben geselecteerd, namelijk Blad1.

Stap 7: En plaats dezelfde code die we in Module hebben gezien en vervang de werkbladfunctie door ME zoals besproken. Hier hebben we voor de verandering het bereik als A2 geselecteerd.

Code:

 Sub VBA_Me () Me.Range ("A2"). Value = "VBA Me" End Sub 

Stap 8: Voer de code opnieuw uit door op F5 te drukken of door op Play te klikken.

We zullen zien dat VBA ME de tekstwaarde ook in cel A2 heeft geretourneerd. Dit is hoe we het bovenliggende object kunnen uitwisselen met VBA ME.

VBA Me - Voorbeeld # 2

Nu dezelfde VBA ME die we in Gebruikersformulier zullen zien. Volg hiervoor de onderstaande stappen:

Stap 1: Open een gebruikersformulier vanuit het menutabblad Invoegen zoals hieronder getoond.

Dit ziet er zo uit.

Stap 2: Selecteer TextBox in deze toolbox.

Stap 3: Sleep deze TextBox naar het gebruikersformulier.

Hier selecteren we Tekstvak zodat we de uitvoer zouden zien wat we zullen invoeren.

Stap 4: Dubbelklik op het gemaakte tekstvak dat ons zal leiden om de codemodus te bewerken.

Code:

 Optie Expliciete privé-sub TextBox1_Change () Einde-sub 

Stap 5: Schrijf de code om het vak Gebruikersformulier en tekst te selecteren dat we hebben gemaakt.

Code:

 Optie Expliciete privé-sub TextBox1_Change () UserForm1.TextBox1.Value End Sub 

Stap 6: Selecteer nu de tekst die u wilt zien in het tekstvak van het gebruikersformulier. Laat die tekst " Ok testen! ”.

Code:

 Optie Expliciete privé-sub TextBox1_Change () UserForm1.TextBox1.Value = "Testen OK!" Einde Sub 

Stap 7: Voer nu de code uit door op F5 te drukken of door op Play te klikken. We krijgen een gebruikersformulier met een tekstvak erin zoals hieronder getoond. Als we nu iets in dat tekstvak proberen in te voeren, zien we het uitvoerbericht dat we net hierboven hebben ingesteld.

Hier zal ons ME-object de naam zijn van het gebruikersformulier dat het bovenliggende object is.

Stap 8: Dus we kunnen dat vervangen door ME om VBA ME uit te voeren.

Code:

 Optie Expliciete privé Sub TextBox1_Change () Me.TextBox1.Value = "Testen OK!" Einde Sub 

Stap 9: Voer de code opnieuw uit.

Stap 10: En probeer iets in het tekstvak te typen. We zullen hetzelfde uitvoerbericht in het tekstvak zien dat we eerder hebben ontvangen.

Dit is hoe we VBA ME overal kunnen implementeren door het ouderobject te vervangen door ME.

VBA Me - Voorbeeld # 3

Er is nog een eenvoudig voorbeeld om te zien hoe VBA Me werkt. We hebben een blad gemaakt en dit de naam Test gegeven .

Stap 1: Open dat blad in VBA en schrijf de code waar we het nieuwe blad in het berichtvak een naam zullen geven.

Code:

 Sub VBA_Me2 () MsgBox Sheet2.Name End Sub 

Stap 2: Voer nu de code uit. We krijgen de naam van het blad als test .

Stap 3: Hier is Sheet2 ons object geworden dat kan worden vervangen. Dus kunnen we vervangen door MIJ zoals hieronder getoond.

Code:

 Sub VBA_Me2 () MsgBox Me.Name End Sub 

Stap 4: En voer de code opnieuw uit. We zullen zien, de naam van Sheet Test zal worden gezien in het berichtenvak.

Voors en tegens van Excel VBA Me

  • Het lijkt complex, maar het is heel eenvoudig te implementeren.
  • We kunnen elk object vervangen door VBA Me.
  • Dit helpt ook bij het verminderen van de code door ongewenste, verkeerd te gebruiken objectfuncties te verwijderen.
  • ME biedt ook de referentie om een ​​specifiek exemplaar van Klasse van dezelfde code te selecteren.
  • Het kan niet worden geïmplementeerd in Module.

Dingen om te onthouden

  • We moeten dezelfde objectfunctie van het bovenliggende object vervangen die zich in hetzelfde blad of gebruikersformulier van de code bevindt.
  • Het wordt automatisch beschikbaar voor elke subcategorie in dezelfde klasse of hetzelfde formulier.
  • VBA Me kan worden gebruikt met elk type code waarbij het vervangende bovenliggende object wordt vervangen.
  • VBA Me kan direct worden gebruikt waar we alleen Debug Print of een berichtenvak kunnen gebruiken. In plaats van de foutopsporingsfunctie of variabele te selecteren, kunnen we dat vervangen door VBA ME.

Aanbevolen artikelen

Dit is een handleiding voor de VBA Me-functie. Hier bespreken we hoe u Excel VBA met mij-functie kunt gebruiken, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. VBA DoEvents (voorbeelden met Excel-sjabloon)
  2. Hoe AutoFill in VBA te gebruiken?
  3. VBA-indelingsnummer (voorbeelden)
  4. Wat is VBA GetObject-functie?

Categorie: