SendKeys VBA

SendKeys VBA di Excel

SendKeys in linguaggio VBA è un metodo utilizzato per inviare sequenze di tasti alla finestra attiva in modo che possiamo lavorare manualmente in seguito. Ogni volta che usiamo alfabeti come chiavi, tutti gli alfabeti devono essere in caratteri minuscoli. È un metodo complesso e si consiglia di utilizzare solo se necessario e quando non hai più opzioni

"SendKeys" è uno degli argomenti complessi da comprendere. Non molti di noi usano questa funzione in VBA, ma è sempre una buona cosa avere maggiori conoscenze su più argomenti. In questo articolo, ti mostreremo come utilizzare la funzione SendKeys. Potresti trovare difficile rileggere l'articolo più volte con un approccio pratico per imparare velocemente e meglio.

Sintassi

Di seguito è riportata la sintassi del metodo SendKeys di vba.

Chiavi o stringa: il tipo di chiave che dobbiamo inviare all'applicazione attiva.

Aspetta: in questo argomento possiamo usare due cose, ovvero VERO o FALSO

  • VERO se si desidera che Excel attenda l' elaborazione delle chiavi assegnate prima di riavere il controllo alla macro.
  • FALSO se ignori il parametro Wait , questo sarà il valore predefinito. Se scegli FALSE, excel continua a eseguire la macro senza attendere che le chiavi vengano elaborate nella finestra attiva.

I tasti comuni che usiamo con la tastiera sono "Ctrl, Shift e ALT" . Quindi con il metodo SendKeys, dobbiamo usarli con caratteri speciali, la tabella seguente mostra i caratteri speciali per i tre tasti comuni sopra.

Altri tasti hanno tasti e caratteri diversi, la tabella sottostante mostra la spiegazione dettagliata di ogni tasto.

Secondo il requisito, possiamo utilizzare una qualsiasi delle chiavi di cui sopra. Con alcuni esempi pratici ti mostreremo come utilizzare le SendKeys.

Esempi di utilizzo del metodo SendKeys VBA di Excel

Puoi scaricare questo modello Excel SendKeys VBA qui - Modello Excel SendKeys VBA

Esempio 1

Ad esempio, guarda il valore della cella sottostante.

Abbiamo valori in tre celle e nella prima cella abbiamo un valore di “Bangalore” e per questa cella c'è un commento come “Capitale del Karnataka”.

Ora usando "SendKeys" proviamo a modificare questo commento.

Apri il foglio Excel e vai all'editor di visual basic, avvia la sottoprocedura VBA.

Codice:

 Sub Send_Keys_Example () End Sub 

Innanzitutto, dobbiamo selezionare la cella del commento per modificare il commento. Quindi utilizzare il codice RANGE (“A1”) Selezionare

Codice:

 Sub Send_Keys_Example () Range ("A1"). Seleziona End Sub 

Una volta selezionata la cella, eseguiremo l'azione di modificare i commenti. Qui dobbiamo ricordare la scorciatoia da tastiera che usiamo per modificare il commento.

Per modificare il commento, utilizziamo il tasto di scelta rapida "Shift + F2" .

Se premi questo tasto, il commento verrà modificato.

Ora apri il metodo "SendKeys".

Nel metodo SendKeys, il carattere per utilizzare il tasto MAIUSC è "+" (segno più), quindi immettere il codice di accesso "+".

Ora il segno più funziona come un tasto MAIUSC, il tasto successivo insieme a MAIUSC che usiamo è il tasto F2. Ogni volta che utilizziamo i tasti funzione dobbiamo racchiuderli tra parentesi graffe, quindi inserisci il tasto funzione F2 tra parentesi graffe.

Codice:

 Sub Send_Keys_Example () Intervallo ("A1"). Seleziona SendKeys "+ {F2}" End Sub 

Ora esegui il codice e guarda cosa otteniamo.

Quando proviamo a eseguire il codice abbiamo ricevuto il messaggio come sopra. Una delle cose fondamentali che dobbiamo tenere a mente è che non possiamo eseguire la macro che usa "SendKeys" dalla finestra dell'editor di visual basic.

Dobbiamo eseguire il codice dall'elenco "Macro".

Chiudere prima la finestra di Visual Basic Editor.

Vai alla scheda "Sviluppatore" e fai clic su "Macro".

Ora si apre un elenco di tutte le macro, scegli la macro che devi eseguire. Il nome della nostra macro è "Send_Keys_Example", quindi premerò il pulsante Esegui.

Puoi vedere che l'opzione Modifica commento è abilitata.

Come puoi vedere sopra, ha assegnato il tasto di scelta rapida di MAIUSC + F2 per aprire l'opzione di modifica del commento.

Esempio n. 2

Ad esempio, se vuoi aprire la finestra "Incolla speciale" tramite il metodo SendKeys, possiamo farlo anche noi. Innanzitutto, dobbiamo copiare determinate celle e quindi utilizzare SendKeys.

Codice:

 Sub Send_Keys_Example1 () Intervallo ("A1"). Copia SendKeys "% es" End Sub 

Scegli la macro che devi eseguire e quindi fai clic su Esegui.

Quando esegui il codice, si aprirà sotto la finestra di dialogo speciale per incollare.

Cose da ricordare

  • SendKeys assegna le sequenze di tasti all'applicazione attiva.
  • Questo metodo è così complesso e consiglia di utilizzare solo se necessario e quando non hai più opzioni.
  • Ogni volta che usiamo alfabeti come chiavi, tutti gli alfabeti devono essere in caratteri minuscoli.