Excel VBA Me Функція

Тільки побачивши ім'я VBA Me, люди повинні замислитися, що це за VBA під назвою VBA Me? Це мені прийшло в голову і тоді, коли я почув це вперше. VBA має об'єкт під назвою ME, який використовується замість батьківських об'єктів. Це здається деякою типовою функцією зі складним синтаксисом. Але повірте, синтаксис VBA Me, можливо, бачив і використовував також. Хоча VBA Me використовується в розширеному ліміті і його не бачать у звичайних командах.

Я знаю, читаючи поки що, у людей все ще може виникнути питання, що таке VBA Me? Давайте розберемося це на дуже ґрунтовій мові. Розгляньте себе в цьому випадку. Нам усім з дитинства давали прізвиська, які можуть бути 2 і більше. Але всі мають одне офіційне та справжнє ім’я, за яким нас називають решта світу. Цим ми знайомимо нас з рештою людей. Отже, справжнє ім'я буде МЕ в об'єкті VBA Me, який можна використовувати, замінивши подібні інші ідентичності. Цей приклад можна зрозуміти і протилежно.

Чесно кажучи, VBA Me не має жодного визначеного синтаксису. Це використовується як заміна батьківських об'єктів.

Як використовувати функцію Excel VBA Me?

Нижче наведено різні приклади використання функції Me в Excel VBA.

Ви можете завантажити цей шаблон VBA Me Excel тут - Шаблон VBA Me Excel

VBA Me - Приклад №1

VBA ME може бути реалізований як в модулі, так і в листі. Але нам знову потрібно знати, коли ми повинні використовувати що. Ми можемо використовувати VBA Me в будь-якому місці. Її можна використовувати в класі або модулі. І у класу є 2 модулі, тобто модуль з інтерфейсом користувача та модуль без інтерфейсу користувача . Тут ми побачимо Модуль з інтерфейсом користувача. Як було сказано, ми виконаємо це в Модулі.

Нижче наведено різні етапи використання функції VBA Me.

Крок 1: Вставте новий модуль у Visual Basic Editor (VBE). Перейдіть на вкладку Вставка > виберіть Модуль.

Крок 2: Запишіть підпроцедуру для VBA ME, як показано нижче.

Код:

 Sub VBA_Me () Кінець Sub 

Крок 3: Виберіть спочатку робочий аркуш. Тут ми будемо вибирати робочий аркуш, який названий Sheet1 .

Код:

 Sub VBA_Me () Робочі листи ("Sheet1") Кінець Sub 

Крок 4: Тепер виберіть комірку діапазону, де ми будемо бачити вихідне значення. Нехай ця клітинка буде B2, а значення "VBA Me", як показано нижче.

Код:

 Sub VBA_Me () Робочі листи ("Sheet1"). Діапазон ("B2"). Значення = "VBA Me" Кінець Sub 

Крок 5: Тепер запустіть код, натиснувши клавішу F5 або натиснувши кнопку Play. Ми побачимо, що значення друкується у комірці В2.

Тут об'єктом ME буде назва листа, який ми вибрали за допомогою функції Workheets. Тож тепер ми замінимо це на МЕ. Але знову це не працюватиме в модулі.

Крок 6: Перейдіть до обраного нами аркуша, тобто Sheet1.

Крок 7: І розмістіть той самий код, який ми бачили в Модулі, і замініть функцію робочого аркуша на ME, як обговорювалося. Тут для зміни ми вибрали Діапазон як А2.

Код:

 Sub VBA_Me () Me.Range ("A2"). Значення = "VBA Me" Кінець Sub 

Крок 8: Знову запустіть код, натиснувши клавішу F5 або натиснувши кнопку Play.

Ми побачимо, VBA ME також повернув значення тексту у комірці A2. Ось так ми можемо обмінятися батьківським об'єктом з VBA ME.

VBA Me - Приклад №2

Тепер той самий VBA ME ми побачимо у формі користувача. Для цього виконайте наступні кроки:

Крок 1. Відкрийте форму користувача на вкладці меню Вставка, як показано нижче.

Це буде виглядати приблизно так.

Крок 2: У цій панелі інструментів виберіть TextBox.

Крок 3: Перетягніть цей TextBox на форму користувача.

Тут ми вибираємо поле "Текст", щоб ми бачили вихід, до чого будемо подавати.

Крок 4: Двічі клацніть на створеному текстовому полі, яке ми направлятимемо нас редагувати режим коду.

Код:

 Варіант Явний приватний Sub TextBox1_Change () Кінець Sub 

Крок 5: Напишіть код, щоб вибрати поле «Форма користувача» та «Текст», яке ми створили.

Код:

 Варіант Явний приватний Sub TextBox1_Change () UserForm1.TextBox1.Value End Sub 

Крок 6: Тепер виберіть текст, який ви хочете побачити у текстовому полі Форма користувача. Нехай цей текст буде " Тест добре! ”.

Код:

 Варіант Явний приватний Sub TextBox1_Change () UserForm1.TextBox1.Value = "Тестування нормально!" Кінець Під 

Крок 7: Тепер запустіть код, натиснувши клавішу F5 або натиснувши кнопку Play. Ми отримаємо форму користувача з текстовим полем, як показано нижче. Тепер, якщо ми спробуємо ввести щось у це текстове поле, ми побачимо вихідне повідомлення, яке ми встановили трохи вище.

Тут нашим об'єктом ME буде ім'я форми користувача, яка є батьківським об'єктом.

Крок 8: Отже, ми можемо замінити це на ME для виконання VBA ME.

Код:

 Варіант Явний приватний Sub TextBox1_Change () Me.TextBox1.Value = "Тестування нормально!" Кінець Під 

Крок 9: Знову запустіть код.

Крок 10: І спробуйте ввести що-небудь у поле Текст. Ми побачимо те саме вихідне повідомлення у текстовому полі, яке ми отримали раніше.

Ось так ми можемо реалізувати VBA ME будь-де, замінивши батьківський об’єкт на ME.

VBA Me - Приклад №3

Є ще один простий приклад, щоб побачити, як працює VBA Me. Ми створили аркуш і назвали його Тестом .

Крок 1: Відкрийте цей аркуш у VBA і напишіть код, де ми будемо називати новостворений аркуш у вікні повідомлення.

Код:

 Sub VBA_Me2 () MsgBox Sheet2.Name End Sub 

Крок 2: Тепер запустіть код. Ми отримаємо назву аркуша як Тест .

Крок 3: Тут Sheet2 став нашим об'єктом, який можна замінити. Отже, ми можемо замінити ME, як показано нижче.

Код:

 Sub VBA_Me2 () MsgBox Me.Name End Sub 

Крок 4: І запустіть код ще раз. Ми побачимо, назва Sheet Test буде видно у вікні повідомлень.

Плюси і мінуси Excel VBA Me

  • Це здається складним, але його дуже просто здійснити.
  • Ми можемо замінити будь-який об’єкт VBA Me.
  • Це також допомагає зменшити розмір коду, видаливши небажані, помилкові функції об'єкта.
  • ME також надає посилання для вибору конкретного примірника класу того ж коду.
  • Вона не може бути реалізована в модулі.

Що потрібно пам’ятати

  • Нам потрібно замінити ту саму функцію об'єкта батьківського об'єкта, яка є в тому самому аркуші коду або таблиці користувача.
  • Він автоматично стає доступним для кожної підкатегорії одного класу або форми.
  • VBA Me може використовуватися з будь-яким типом коду, де ми бачимо заміну батьківського об'єкта.
  • VBA Me може бути використаний безпосередньо там, де ми можемо просто використовувати налагодження друку або поле повідомлення, де замість вибору функції налагодження чи змінної ми можемо замінити її на VBA ME.

Рекомендовані статті

Це посібник з функцій VBA Me. Тут ми обговорюємо, як використовувати Excel VBA з функцією Me разом із практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. VBA DoEvents (приклади з шаблоном Excel)
  2. Як використовувати автозаповнення у VBA?
  3. Номер формату VBA (приклади)
  4. Що таке функція VBA GetObject?

Категорія: