VBA SendKeys | Приклади використання методу Excel VBA SendKeys

Ключі Excel VBA SendKeys

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

“SendKeys” - одна із складних тем для розуміння. Не багато з нас використовують цю функцію у VBA, але завжди добре мати більше знань з більшої кількості тем. У цій статті ми покажемо вам, як користуватися функцією SendKeys. Можливо, вам буде важко перечитати статтю кілька разів із практичним підходом, щоб швидше та краще вчитися.

Синтаксис

Нижче наведено синтаксис методу vba SendKeys.

Клавіші або рядок: Тип ключа, який нам потрібно надіслати до активної програми.

Зачекайте: У цьому аргументі ми можемо використовувати дві речі, тобто TRUE або FALSE

  • ІСТИНА, якщо ви хочете, щоб Excel чекав, поки призначені ключі будуть оброблені, перш ніж повернути елемент керування до макросу.
  • FALSE, якщо проігнорувати параметр Wait, це буде значенням за замовчуванням. Якщо ви вибрали FALSE, тоді Excel продовжує запускати макрос, не чекаючи обробки ключів до активного вікна.

Загальними клавішами, якими ми користуємося на клавіатурі, є "Ctrl, Shift і ALT" . Тож із методом SendKeys нам потрібно використовувати їх зі спеціальними символами, у таблиці нижче наведені спеціальні символи для трьох вищезазначених загальних ключів.

Інші клавіші мають різні клавіші та символи, нижче в таблиці наведено детальне пояснення кожної клавіші.

Відповідно до вимоги, ми можемо використовувати будь-який із наведених вище ключів. На кількох практичних прикладах ми покажемо вам спосіб використання SendKeys.

Приклади використання методу Excel VBA SendKeys

Завантажити цей шаблон VBA SendKeys Excel можна тут - Шаблон Excel VBA SendKeys

Приклад №1

Наприклад, подивіться на значення клітинки нижче.

Ми маємо значення в трьох комірках, а в першій комірці маємо значення “Бангалор”, і для цієї комірки є коментар як “Столичне місто Карнатака”.

Тепер, використовуючи “SendKeys”, ми намагаємось відредагувати цей коментар.

Відкрийте аркуш Excel і перейдіть до редактора Visual Basic, запустіть підпроцедуру VBA.

Код:

 Sub Send_Keys_Example () Кінець Sub 

Спочатку нам потрібно вибрати комірку коментаря, щоб редагувати коментар. Тож використовуйте код RANGE («А1»). Виберіть

Код:

 Sub Send_Keys_Example () Діапазон ("A1"). Виберіть End Sub 

Після вибору комірки ми виконаємо дію редагування коментарів. Тут нам потрібно згадати комбінацію клавіш, яку ми використовуємо для редагування коментаря.

Для редагування коментаря ми використовуємо комбінацію клавіш «Shift + F2» .

Якщо натиснути цю клавішу, це буде редагувати коментар.

Тепер відкрийте метод “SendKeys”.

У методі SendKeys символом для використання клавіші SHIFT є "+" (знак плюс), тому введіть код "+".

Тепер знак плюс працює як клавіша SHIFT, наступною клавішею поряд із SHIFT, яку ми використовуємо, є клавіша F2. Кожного разу, коли ми використовуємо функціональні клавіші, нам потрібно вкласти їх у фігурні дужки, тому введіть функціональну клавішу F2 у фігурну дужку.

Код:

 Sub Send_Keys_Example () Діапазон ("A1"). Виберіть SendKeys "+ {F2}" End Sub 

Тепер виконайте код і подивіться, що ми отримаємо.

Коли ми намагаємось виконати код, ми отримали повідомлення, як зазначено вище. Однією з ключових речей, яку ми повинні пам’ятати, є те, що ми не можемо запустити макрос, який використовує “SendKeys”, із вікна візуального редактора.

Нам потрібно запустити код зі списку “Макро”.

Спочатку закрийте вікно редактора Visual Basic.

Перейдіть на вкладку "Розробник" і натисніть "Макрос".

Тепер відкриється список усіх макросів, виберіть макрос, який потрібно запустити. Наше ім'я макросу - "Send_Keys_Example", тому я натисну кнопку запуску.

Ви бачите, що параметр Редагувати коментар увімкнено.

Як ви можете бачити вище, він призначив комбінацію клавіш SHIFT + F2, щоб відкрити опцію редагування коментаря.

Приклад №2

Наприклад, якщо ви хочете відкрити вікно “Спеціальна вставка” за допомогою методу SendKeys, ми можемо зробити це також. Спочатку нам потрібно скопіювати певні комірки, а потім використовувати SendKeys.

Код:

 Sub Send_Keys_Example1 () Діапазон ("A1"). Копіювати SendKeys "% es" Кінець Sub 

Виберіть макрос, який потрібно запустити, а потім натисніть Виконати.

Після запуску коду він відкриється нижче, вставте спеціальне діалогове вікно.

Що слід пам’ятати

  • SendKeys призначає натискання клавіш активній програмі.
  • Цей метод настільки складний і рекомендує застосовувати лише у разі потреби та коли у вас немає можливостей.
  • Кожного разу, коли ми використовуємо алфавіти в якості клавіш, усі алфавіти повинні мати маленькі символи.