VBA Аз - Как да използвам ключова дума в VBA Excel? (с примери)

Аз ключова дума в VBA Excel

Сигурен съм, че трябва да сте имали този въпрос „Какво е„ МЕН “във VBA? Да, дори аз имах този въпрос, когато бях нов за VBA. След като прекарах значително време, преживях ключовата дума ME в Excel VBA Coding. Това е малко напреднало ниво, ако сте начинаещ във VBA. Както и да е, ще го хванете бавно. В тази статия ще ви покажем как да използвате ключовата дума „Аз“ в кодирането на Excel VBA.

“ME” е обектът в VBA, който е специално проектиран, който е вграден, за да се отличи. Той сочи към обекта, който се намира, и ние можем да го извикаме чрез ключовата дума „ME“. “ME” представлява родителския обект от мястото, където се намира кода.

Ако не разбирате нищо технически, не се притеснявайте, защото когато дойдат примерите, ще опознаете това по-добре. Преди това нека дам малко предистория във VBA.

Когато пишем макроси на excel, ние пишем в „Модули“, а в модули имаме два комплекта модули. Първият е „Стандартни модули“, а вторият е „Класови модули“.

Освен това в модулите на класа VBA имаме две подкатегории, т.е. модул с потребителски интерфейсен елемент и модул без интерфейсен елемент. Но за тази примерна цел ще вземем предвид само „Модул с елемент на потребителския интерфейс“.

Някои от примерите за тези модули са ThisWorkbook, Sheet1, UserForm1 и т.н.

Това е общият преглед на ключовата дума ME във VBA. Сега ще видим практически примери за МЕ дума.

Как да използвам ME в Excel VBA?

Например вижте кода по-долу в Модул 1.

Не забравяйте, това е кодът, който бях написал в Модул 1. Това ще вмъкне думата „Здравейте приятели“ в работния лист, наречен „Лист с данни“.

За да се обърнем към листа „Лист с данни“, използвахме обект на работни листове и въведохме работния лист с неговото име.

Сега щракнете двукратно върху „Лист с данни“.

Веднага щом щракнем двукратно, можем да видим празния прозорец за кодиране от дясната страна.

Сега стартирайте подпроцедурата VBA.

Код:

Sub Me_Example () Край Sub

Тъй като пиша кода само в този лист, вместо да споменавам името на работния лист, мога просто да го нарека „ME“.

Можем да видим списъка IntelliSense с ME дума. Сега думата „ME“ работи като имплицитно декларирана обектна променлива.

Сега използването на „VBA Me“ позволява достъп до обекта Range във VBA и вмъкване на същата дума, както по-горе в листа.

Код:

Sub Me_Example () Me.Range ("A1"). Value = "Hello Friends" End Sub

Това ще вмъкне същата дума като нашия предишен макрос в Excel листа.

Тук едно нещо, което забелязахме, е, че можем да видим думата „МЕН“ само в конкретните обекти и тази дума представлява обекта, в който продължава писането на кода.

В този пример ключовата дума Me представлява работния лист „ Лист с данни “.

По-долу са някои от примерните кодове на ME дума.

Пример # 1

Код:

Sub Me_Example() Me.Range("A1").Value = "Hello Friends" 'This will insert Hello Friends to the cell A1 in a Data Sheet. Me.Name = "New Sheet" 'This will change the sheet name from the Data Sheet to New Sheet. Me.Select 'This will select the sheet. End Sub

When we run the above code using the F5 key, in A1 cell, we’ll get Hello Friends, sheets name will change from Data Sheet to New Sheet, and this sheet will get selected.

Example #2 - VBA ME with User Form

“ME” is the keyword often used with User forms in VBA. For example, look at the below image of the newly inserted user form in VBA.

This user form name is “UserForm1”.

Whenever we want to address this user form from another module, we can call this by this name, i.e., “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.

По този начин във VBA можем да препращаме обекта с думата „ME“, когато изрично пишем кода в тези обекти.

Интересни статии...