VBA Me - Kaip naudoti mane raktiniu žodžiu „VBA Excel“? (su pavyzdžiais)

Aš raktinis žodis „VBA Excel“

Esu įsitikinęs, kad jums turėjo kilti šis klausimas „Kas yra„ aš “VBA? Taip, net man kilo šis klausimas, kai buvau naujas VBA. Praleidęs nemažai laiko, „Excel VBA“ kodavime patyriau raktinį žodį ME. Tai yra šiek tiek aukštesnis lygis, jei esate VBA starteris. Bet kokiu atveju, jūs gausite tai lėtai. Šiame straipsnyje mes parodysime, kaip naudoti „Me“ raktinį žodį naudojant „Excel VBA“ kodavimą.

„ME“ yra VBA objektas, kuris yra specialiai suprojektuotas ir įmontuotas siekiant tobulėti. Jis nurodo objektą, kuriame yra, ir mes galime jį vadinti raktiniu žodžiu „ME“. „ME“ reiškia pagrindinį objektą, iš kurio yra kodas.

Jei nieko nesuprantate techniškai, nesijaudinkite, nes atėję pavyzdžiai tai geriau sužinosite. Prieš tai leiskite pateikti šiek tiek pagrindinės informacijos apie VBA.

Kai rašome „Excel“ makrokomandas, rašome „Moduliai“, o moduliuose turime du modulių rinkinius. Pirmasis yra „Standartiniai moduliai“, o antrasis - „Klasės moduliai“.

Be to, VBA klasės moduliuose mes turime dvi subkategorijas, ty modulį su vartotojo sąsajos elementu ir modulį be sąsajos elemento. Tačiau šiame pavyzdyje atsižvelgsime tik į „Modulis su vartotojo sąsajos elementu“.

Keletas šių modulių pavyzdžių yra „ThisWorkbook“, „Sheet1“, „UserForm1“ ir pan.

Tai yra bendra VBA raktažodžio ME apžvalga. Dabar pamatysime praktinius žodžio ME pavyzdžius.

Kaip mane naudoti „Excel VBA“?

Pavyzdžiui, pažvelkite į žemiau esantį kodą 1 modulyje.

Atminkite, kad tai kodas, kurį parašiau 1 modulyje. Tai į darbalapį, pavadintą „Duomenų lapas“, įterpsi žodį „Sveiki draugai“.

Norėdami nurodyti lapą „Duomenų lapas“, naudojome objektą „darbalapiai“ ir įvedėme darbalapį jo pavadinimu.

Dabar dukart spustelėsiu „Duomenų lapas“.

Kai tik dukart spustelėsime, dešinėje pusėje pamatysime tuščią kodavimo langą.

Dabar pradėkite VBA antrinę procedūrą.

Kodas:

Sub Me_Pavyzdys () End Sub

Kadangi kodą rašau tik šiame lape, užuot paminėjęs darbalapio pavadinimą, galiu tai tiesiog pavadinti „MAN“.

Mes galime pamatyti „IntelliSense“ sąrašą su žodžiu ME. Dabar žodis „ME“ veikia kaip numanomas objekto kintamasis.

Dabar naudodami „VBA Me“ galite pasiekti VBA objektą „Range“ ir į lapą įterpti tą patį žodį kaip aukščiau.

Kodas:

Sub Me_Pavyzdys () Me.Range ("A1"). Reikšmė = "Sveiki draugai" Pabaigos sub

Tai į „Excel“ lapą įterps tą patį žodį kaip ir ankstesnė mūsų makrokomanda.

Vienas dalykas, kurį pastebėjome, yra tai, kad žodį „MAN“ galime pamatyti tik konkrečiuose objektuose, ir šis žodis reiškia objektą, kuriame vyksta kodo rašymas.

Šiame pavyzdyje raktinis žodis „Me“ reiškia darbalapį „ Duomenų lapas “.

Žemiau yra keletas pavyzdžių kodų ME žodis.

1 pavyzdys

Kodas:

Sub Me_Pavyzdys () Me.Range ("A1"). Reikšmė = "Sveiki draugai" 'Tai įves „Sveiki draugai“ į duomenų langelio langelį A1. Me.Name = "New Sheet" 'Tai pakeis lapo pavadinimą iš Data Sheet į New Sheet. Aš. Pasirinkite „Tai pažymės lapą. Pabaigos sub

Kai vykdysime pirmiau nurodytą kodą naudodami raktą F5, langelyje A1 gausime Sveiki draugai, lapų pavadinimas pasikeis iš duomenų lapo į naują lapą ir šis lapas bus pasirinktas.

2 pavyzdys - VBA ME su vartotojo forma

„ME“ yra raktinis žodis, dažnai naudojamas su vartotojo formomis VBA. Pvz., Pažvelkite į žemiau esantį naujai įterptos vartotojo formos vaizdą VBA.

Šis vartotojo formos pavadinimas yra „UserForm1“.

Kai norime kreiptis į vartotojo formą iš kito modulio, galime tai pavadinti šiuo vardu, ty „UserForm1“.

But when we work within this user form, we don’t need to rely on the name of the user form. Rather we can just use the word “Me.”

Let’s draw one simple text box on the user form.

Double click on User Form to see the below macro.

Now to insert text to the newly inserted text box, we can use two methods.

#1 - First, we can address the User Form by its name and text box by its name.

Code:

Private Sub TextBox1_Change() UserForm1.TextBox1.Text = "Welcome to VBA!!!" End Sub

UserForm1 is the name of the user form. TextBox1 is the name of the text box. So we have inserted the text “Welcome to VBA!!!”.

#2 - Since we are writing the code in the same user form, we can call this by “ME.”

Code:

Private Sub TextBox1_Change() Me.TextBox1.Text = "Welcome to VBA!!!" End Sub

This will also do the same thing as the above code.

Panašiai, VBA, mes galime nurodyti objektą žodžiu „ME“, kai tuose objektuose specialiai rašome kodą.

Įdomios straipsniai...