Sendkeys

Fermé
jo456 - 6 janv. 2009 à 17:52
lativ Messages postés 124 Date d'inscription lundi 17 novembre 2008 Statut Membre Dernière intervention 4 juin 2023 - 23 janv. 2016 à 18:10
Bonjour,

je suis en train de faire un prog (vb) sous vb6 et pour le moment j'avance assez vite grace aux réponce satisfesantes de ce forum...néanmoins pour la suit je vais devoir simuler l'appuye de plusiseurs touches du clavier les unes a la suite des autres...je vais pour ce faire utiliser "sendkeys" je connais quelque touche comme :

Alt ... %
maj... +
F1... {F1}

mais j'ai besoin d'en connaitre d'autre plus particulierement la touche "window", "haut", "bas", "gauche", "droite", "enter" et "tabulation"

je vous remercie d'avance pour votre aide...j'ai chercher sans trouver!!!

4 réponses

scriptiz Messages postés 1424 Date d'inscription dimanche 21 décembre 2008 Statut Membre Dernière intervention 14 septembre 2023 425
10 janv. 2009 à 10:22
Sur

On peut lire :

"Pour spécifier une combinaison de touches avec MAJ, CTRL et ALT, faites précéder le code normal de la touche d'un ou plusieurs codes parmi les suivants :
MAJ	+
CTRL		^
ALT		%
"

donc pour ALT+TAB par exemple pour changer de fenêtre.

Il y a aussi ceci :

"Pour spécifier que les touches MAJ, CTRL et ALT doivent être maintenues enfoncées pendant que d'autres touches sont utilisées, mettez le code de ces touches entre parenthèses. Par exemple, pour spécifier que la touche MAJ doit être maintenue enfoncée pendant que vous appuyez sur les touches E et C, utilisez "+(EC)". Pour spécifier que la touche MAJ doit être maintenue enfoncée pendant que vous appuyez sur la touche E, puis que la touche MAJ doit être relâchée pendant que vous appuyez sur la touche C, utilisez "+EC".

Pour spécifier la répétition de touches, utilisez la forme {touche nombre}. Veillez à placer un espace entre la touche et le nombre de fois que cette touche doit être entrée. Par exemple, {LEFT 42} signifie l'activation de la touche GAUCHE 42 fois. {h 10} indique que la touche H doit être appuyée 10 fois."

Ensuite pour la touche Windows (touche super), c'est juste la cominaison de CTRL+ECHAP.

Donc tu peux le faire avec ^ et {ESC} dans ton SendKeys.

Voilà bonne chance.
2
lativ Messages postés 124 Date d'inscription lundi 17 novembre 2008 Statut Membre Dernière intervention 4 juin 2023 3
23 janv. 2016 à 18:10
Si la touche échappement est abîmée, il suffit de taper Alt 027 (maintenir Alt enfoncé pendant qu'on tape 027)
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 305
6 janv. 2009 à 18:54
BOnjour

... le + long a été de retrouver ce topo dans mon b... que je baptise encore disque dur...

Enclencher une procédure par le biais d'une touche de raccourci ... On veillera à ne pas définir de touches uniques mais plutôt une association de touche ... genre CTRL + f qui pour le code VBA donnera :

Application.OnKey "{^f}", "NomDeLaMacro"

AIDE
 {HELP}

ARRÊT DÉFIL.
 {SCROLLLOCK}

BAS
 {DOWN}

De F1 à F15
 {F1} à {F15}

DÉBUT
 {HOME}

DROITE
 {RIGHT}

ÉCHAP
 {ESCAPE} ou {ESC}

EFFACEMENT
 {CLEAR}

ENTRÉE (pavé numérique)
 {ENTER}

FIN
{END}

GAUCHE
{LEFT}

HAUT
 {UP}

INS
 {INSERT}

PAUSE
{BREAK}

PG.PRÉC
 {PGUP}

PG.SUIV
 {PGDN}

RET.ARR
 {BACKSPACE} ou {BS}

RETOUR
 {RETURN}

SUPPRIMER ou SUPPR.
 {DELETE} ou {DEL}

TABULATION
 {TAB}

VERR. MAJ
 {CAPSLOCK}

VERR. NUM
 {NUMLOCK}

Pour combiner les touches avec
 Placez le caractère ci-dessous avant le code de la touche
ALT
 % (signe de pourcentage)
CTRL
 ^ (signe d'insertion)
MAJ
+ (signe plus)


Option Explicit
'Affecter un raccourci à la touche ECHAP
'"Essai" = nom de la macro à exécuter
Sub Affectation()
Application.OnKey "{ESCAPE}", "Essai"
End Sub
0
scriptiz Messages postés 1424 Date d'inscription dimanche 21 décembre 2008 Statut Membre Dernière intervention 14 septembre 2023 425
6 janv. 2009 à 19:37
0
le plus important pour moi est la touche "winwows" pour acceder au menu démarer sait tu que est le racourci?
je te remerci pour tous ceux que tu ma déja apporté
0
jo456 > jo456
7 janv. 2009 à 10:59
j'aimerais aussi savoir si il est possible de simuler le fait que l'on reste appuyé sur une touche...
exemple....ALT(reste apuyer) puis tab...tab

ceci me permeterais d'afficher une autre fentre si plusieur sont ouverte en bas.
0
kris > jo456
10 janv. 2009 à 18:24
Oui, ça a été donné des milliers de fois (!) chez les pros
Voir sur news://fr.comp.os.ms-windows.programmation
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 305
7 janv. 2009 à 10:59
Hélas non! j'essaierai "win" à tout zazar mais...
0