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

Пример # 1

Например погледнете стойността на клетката по-долу.

Имаме стойности в три клетки, а в първата клетка имаме стойност „Бангалор“ и за тази клетка има коментар като „Столицата на Карнатака“.

Сега използвайки „SendKeys“, ние се опитваме да редактираме този коментар.

Отворете листа на Excel и отидете в редактора на visual basic, стартирайте подпроцедурата VBA.

Код:

Sub Send_Keys_Example () Край Sub

Първо, трябва да изберете клетката за коментар, за да редактирате коментара. Затова използвайте кода RANGE (“A1”). Изберете

Код:

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.

Трябва да стартираме кода от списъка „Макрос“.

Първо затворете прозореца на редактора на Visual Basic.

Отидете в раздела „Програмист“ и кликнете върху „Макрос“.

Сега се отваря списък с всички макроси, изберете макроса, който трябва да стартирате. Нашето име на макрос е „Send_Keys_Example“, така че ще натисна бутона за изпълнение.

Можете да видите, че опцията Редактиране на коментар е активирана.

Както можете да видите по-горе, той е назначил клавиш за бърз достъп на SHIFT + F2, за да отвори опцията за редактиране на коментар.

Пример # 2

Например, ако искате да отворите прозореца „Специално поставяне“ чрез метода SendKeys, можем да направим и това. Първо трябва да копираме определени клетки и след това да използваме SendKeys.

Код:

Sub Send_Keys_Example1 () Диапазон ("A1"). Копиране на SendKeys "% es" Край на Sub

Изберете макроса, който трябва да стартирате и след това щракнете върху Изпълнение.

Когато стартирате кода, той ще се отвори отдолу, поставете специален диалогов прозорец.

Неща за запомняне

  • SendKeys присвоява натискания на клавиши на активното приложение.
  • Този метод е толкова сложен и препоръчва да се използва само ако е необходимо и когато нямате възможности.
  • Винаги, когато използваме азбуки като ключове, всички азбуки трябва да са с малки букви.

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