GNT sans publicité, site mobile, fonctionnalitées exclusives...

Senkeys

Le
Brat'ac
Bonjour,

Je cherche comment faire pour en VBA envoyer la combinaison de touche
"CTRL + ENTER" et "ALT + F" avec Application.Sendkeys

Merci
Lire les 15 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Brat'ac
Le #24220611
Brat'ac avait écrit le 04/02/2012 :
Bonjour,

Je cherche comment faire pour en VBA envoyer la combinaison de touche "CTRL +
ENTER" et "ALT + F" avec Application.Sendkeys

Merci



En fait ce n'est pas exactement cela que je recherche

J'ouvre le client de messagerie et je cherche à simuler les touches
dans celui-ci
Gloops
Le #24221471
Brat'ac a écrit, le 04/02/2012 12:19 :
Brat'ac avait écrit le 04/02/2012 :
Bonjour,



Je cherche comment faire pour en VBA envoyer la combinaison de touche
"CTRL + ENTER" et "ALT + F" avec Application.Sendkeys



Merci



En fait ce n'est pas exactement cela que je recherche

J'ouvre le client de messagerie et je cherche à simuler les touches d ans
celui-ci





Il vaut mieux commencer par dire pour quelle action vouloir les simuler,
et ne se rabattre sur SendKeys qu'en cas d'échec.
Brat'ac
Le #24221561
Dans son message précédent, Gloops a écrit :

Il vaut mieux commencer par dire pour quelle action vouloir les simuler, et
ne se rabattre sur SendKeys qu'en cas d'échec.



J'explique

le bout de code suivant ouvre et prépare un message avec Thunderbird

---------------------------------------------
Sub Mail()
Dim destinataire, sujet, Mes, fichierjoint As String
destinataire = ""
sujet = "Le sujet"
body = "Bonjour"
fichierjoint = "C:monfichier.txt"
strcommand = "C:Program FilesMozilla Thunderbirdthunderbird"
strcommand = strcommand & " -compose " & "to='" & destinataire & "'"
strcommand = strcommand & "," & "subject=" & sujet & ","
strcommand = strcommand & "body=" & body & Mes
strcommand = strcommand & "," & "attachment=file:///" & fichierjoint
Call Shell(strcommand, vbNormalFocus)
End Sub
------------------------------------------------------------------
A ce niveau le message est pret et attend que l'on clique sur envoyer

et pour cela il faut que j'envoie "CTRL + ENTREE" ET 3X "ENTREE" pour
que le message parte.
Gloops
Le #24221851
Brat'ac a écrit, le 04/02/2012 20:57 :
Dans son message précédent, Gloops a écrit :

Il vaut mieux commencer par dire pour quelle action vouloir les
simuler, et ne se rabattre sur SendKeys qu'en cas d'échec.



J'explique

le bout de code suivant ouvre et prépare un message avec Thunderbird

---------------------------------------------
Sub Mail()
Dim destinataire, sujet, Mes, fichierjoint As String
destinataire = ""
sujet = "Le sujet"
body = "Bonjour"
fichierjoint = "C:monfichier.txt"
strcommand = "C:Program FilesMozilla Thunderbirdthunderbird"
strcommand = strcommand & " -compose " & "to='" & destinataire & "' "
strcommand = strcommand & "," & "subject=" & sujet & ","
strcommand = strcommand & "body=" & body & Mes
strcommand = strcommand & "," & "attachment=file:///" & fichierjoin t
Call Shell(strcommand, vbNormalFocus)
End Sub
------------------------------------------------------------------
A ce niveau le message est pret et attend que l'on clique sur envoyer

et pour cela il faut que j'envoie "CTRL + ENTREE" ET 3X "ENTREE" pour
que le message parte.





Pour l'envoi d'un mail il existe plusieurs formules qui fonctionnent
sans avoir à simuler de touches. J'ai vu passer CDO, Outlook, Lotus
Notes. Je dois avouer que je n'ai pas eu la curiosité d'essayer avec
Thunderbird, que pourtant j'utilise couramment avec l'interface
utilisateur. Il va falloir plonger dans la doc.

A toutes fins utiles, il y a un forum spécialisé sur Thunderbird là :
http://www.geckozone.org/forum/viewforum.php?f=4

La bonne adresse à donner ne serait pas vraiment celle-là, mais plutô t
celle du site qui donne les références pour les développeurs, mais
j'avoue qu'à brûle-pourpoint, j'ai un trou.
Une recherche sur le forum devrait aider pour trouver l'adresse.
Une fois le bon site trouvé, si il y a une doc sur Automation c'est
l'idéal, à défaut DDE. Si c'est la première fois que tu pratiques ça il
y aura un temps d'adaptation, c'est sûr. Mais c'est rentable en matiè re
d'efficacité du résultat.


Sinon comme la fenêtre est sélectionnée, ce que tu dis devrait marc her
comme ça :
SendKeys "^~~~~", true

Sous réserve que l'application accepte que les touches arrivent toutes
ensemble, que le tampon de clavier ne soit pas vidé en route.

Mais attention, encore une fois, c'est toujours largement moins fiable
que de chercher la bonne commande. Notamment, si jamais une raison ou
une autre venait à sélectionner une autre fenêtre juste à ce mome nt-là,
les simulations de touche partiraient vers une autre fenêtre, et le
résultat serait totalement différent.
isabelle
Le #24221871
salut Brat'ac,


il y a un bon exemple ici :
http://www.excel-downloads.com/foru...rbird.html

il y a aussi cdo qui est une bonne alternative : http://www.rondebruin.nl/cdo.htm


--
isabelle




Le 2012-02-04 14:57, Brat'ac a écrit :
Dans son message précédent, Gloops a écrit :

Il vaut mieux commencer par dire pour quelle action vouloir les simuler, et ne se rabattre sur SendKeys qu'en cas d'échec.



J'explique

le bout de code suivant ouvre et prépare un message avec Thunderbird

---------------------------------------------
Sub Mail()
Dim destinataire, sujet, Mes, fichierjoint As String
destinataire = ""
sujet = "Le sujet"
body = "Bonjour"
fichierjoint = "C:monfichier.txt"
strcommand = "C:Program FilesMozilla Thunderbirdthunderbird"
strcommand = strcommand & " -compose " & "to='" & destinataire & "'"
strcommand = strcommand & "," & "subject=" & sujet & ","
strcommand = strcommand & "body=" & body & Mes
strcommand = strcommand & "," & "attachment=file:///" & fichierjoint
Call Shell(strcommand, vbNormalFocus)
End Sub
------------------------------------------------------------------
A ce niveau le message est pret et attend que l'on clique sur envoyer

et pour cela il faut que j'envoie "CTRL + ENTREE" ET 3X "ENTREE" pour que le message parte.


Publicité
Suivre les réponses
Poster une réponse
Anonyme