VBA SendKeys | Exemple de utilizare a metodei Excel VBA SendKeys

Excel VBA SendKeys

SendKeys în limba VBA este o metodă utilizată pentru a trimite apăsări de taste la fereastra activă, astfel încât să putem lucra manual după aceea. Ori de câte ori folosim alfabete ca taste, toate alfabetele trebuie să fie cu caractere mici. Este o metodă complexă și recomandată să o utilizați numai dacă este necesar și când nu mai aveți opțiuni

„SendKeys” este unul dintre subiectele complexe de înțeles. Nu mulți dintre noi folosim această caracteristică în VBA, dar este întotdeauna un lucru bun să aveți mai multe cunoștințe despre mai multe subiecte. În acest articol, vă vom arăta cum să utilizați funcția SendKeys. S-ar putea să fie dificil să recitiți articolul de mai multe ori cu o abordare practică pentru a învăța rapid și mai bine.

Sintaxă

Mai jos este sintaxa metodei vba SendKeys.

Chei sau șir: tipul de cheie pe care trebuie să îl trimitem aplicației active.

Așteptați: în acest argument, putem folosi două lucruri, adică ADEVĂR sau FALS

  • ADEVĂRAT dacă doriți ca Excel să aștepte procesarea cheilor atribuite înainte de a reveni la controlul macro.
  • FALS dacă ignorați parametrul Așteptați aceasta va fi valoarea implicită. Dacă alegeți FALSE, atunci Excel continuă să ruleze macro-ul fără a aștepta ca tastele să fie procesate în fereastra activă.

Tastele uzuale pe care le folosim cu tastatura sunt „Ctrl, Shift și ALT” . Deci, cu metoda SendKeys, trebuie să le folosim cu caractere speciale, tabelul de mai jos arată caracterele speciale pentru cele trei chei comune de mai sus.

Alte chei au chei și caractere diferite, tabelul de mai jos prezintă explicația detaliată pentru fiecare cheie.

Conform cerințelor, putem utiliza oricare dintre tastele de mai sus. Cu câteva exemple practice, vă vom arăta modul de utilizare a SendKeys.

Exemple de utilizare a metodei Excel VBA SendKeys

Puteți descărca acest șablon Excel VBA SendKeys aici - Șablon Excel VBA SendKeys

Exemplul nr. 1

De exemplu, uitați-vă la valoarea celulei de mai jos.

Avem valori în trei celule, iar în prima celulă avem valoarea „Bangalore”, iar pentru această celulă există un comentariu sub denumirea „Capitala Karnataka”.

Acum folosind „SendKeys” încercăm să edităm acest comentariu.

Deschideți foaia Excel și accesați editorul de bază vizual, porniți subprocedura VBA.

Cod:

 Sub Send_Keys_Example () End Sub 

Mai întâi, trebuie să selectăm celula de comentarii pentru a edita comentariul. Așadar, utilizați codul RANGE („A1”). Selectați

Cod:

 Sub Send_Keys_Example () Range ("A1"). Selectați End Sub 

Odată selectată celula, vom efectua acțiunea de editare a comentariilor. Aici trebuie să ne amintim de comanda rapidă de la tastatură folosită pentru a edita comentariul.

Pentru a edita comentariul, folosim tasta de comandă rapidă „Shift + F2” .

Dacă apăsați această tastă, acesta va edita comentariul.

Acum deschideți metoda „SendKeys”.

În metoda SendKeys, caracterul pentru utilizarea tastei SHIFT este „+” (semnul Plus), deci introduceți codul de conectare „+”.

Acum semnul plus funcționează ca o tastă SHIFT, următoarea cheie împreună cu SHIFT pe care o folosim este tasta F2. Ori de câte ori folosim tastele funcționale, trebuie să le încadrăm cu paranteze buclate, așa că introduceți tasta funcțională F2 în paranteză buclată.

Cod:

 Sub Send_Keys_Example () Range ("A1"). Selectați SendKeys "+ {F2}" End Sub 

Acum executați codul și vedeți ce obținem.

Când încercăm să executăm codul, am primit mesajul de mai sus. Unul dintre lucrurile cheie pe care trebuie să le avem în vedere este că nu putem rula macroul care utilizează „SendKeys” din fereastra editorului de bază vizual.

Trebuie să rulăm codul din lista „Macro”.

Închideți mai întâi fereastra Visual Basic Editor.

Accesați fila „Dezvoltator” și faceți clic pe „Macro”.

Acum se deschide o listă cu toate macrocomenzile, alegeți macrocomanda pe care trebuie să o rulați. Numele nostru de macro este „Send_Keys_Example”, așa că voi apăsa pe butonul Run.

Puteți vedea că opțiunea Editați comentariul este activată.

După cum puteți vedea mai sus, a atribuit tasta de comandă rapidă a SHIFT + F2 pentru a deschide opțiunea de editare comentariu.

Exemplul nr. 2

De exemplu, dacă doriți să deschideți fereastra „Lipire specială” prin metoda SendKeys, putem face acest lucru și. Mai întâi, trebuie să copiem anumite celule și apoi să folosim SendKeys.

Cod:

 Sub Send_Keys_Example1 () Range ("A1"). Copiați SendKeys "% es" End Sub 

Alegeți macrocomanda pe care trebuie să o rulați, apoi faceți clic pe Executare.

Când rulați codul, acesta se va deschide mai jos, lipiți caseta de dialog specială.

Lucruri de amintit

  • SendKeys atribuie apăsări de tastă aplicației active.
  • Această metodă este atât de complexă și recomandă utilizarea numai dacă este necesar și atunci când nu mai aveți opțiuni.
  • Ori de câte ori folosim alfabete ca taste, toate alfabetele trebuie să fie cu caractere mici.