Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Pb avec Sendkeys

Johann RSW

XLDnaute Nouveau


Bonjour le Forum,

Voilà j'essaye d'automatiser l'envoi de fax avec le couple Excel 2002 CP3 et Delrinafax Pro 9.0.

J'arrive à imprimer mon document correctement sur mon imprimante Delrinafax.
Après dans l'application 'Delrinafax' je dois editer :
Le nom du destinataire ; {Tab} ; son n° de fax ; {tab} ; l'objet....... etc puis envoyer {Alt F n).
Mais malheureusment voici les problèmes rencontrés avec la méthode Sendkeys :
1) je parviens de façcon aléatoire à editer le nom du destinataire,
2) la tabulation ne semble pas être comprise car Sendkeys('TAB') s'écrit à chauqe fois dans ma procédure !!!!

(Mince mince mince et mince !!!!)

Voici ma procédure :
Sub Fax_Excel_Delrinafax()
Application.ActivePrinter = 'DelFax sur Ne06:'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
'DelFax sur Ne06:', Collate:=True

Application.WindowState = xlMinimized
AppActivate 'DelrinaFax Pro'

nvlleHeure = Hour(Now())
nvlleMinute = Minute(Now())
nvlleSeconde = Second(Now()) + 10
waitTime = TimeSerial(nvlleHeure, nvlleMinute, nvlleSeconde)
Application.Wait waitTime


Application.SendKeys ('TOTO') 'Destinataire
Application.SendKeys ('TAB')
Application.SendKeys ('118 218') 'N° de fax
Application.SendKeys ('TAB')
Application.SendKeys ('RSW & Cie') 'Société
Application.SendKeys ('TAB')
Application.SendKeys ('Essai') 'Objet
Application.SendKeys ('TAB')
Application.SendKeys ('Bonjour vieux') 'corps du message
Application.SendKeys ('%fn') 'envoi du message
Application.WindowState = xlNormal

End Sub
 

Johann RSW

XLDnaute Nouveau
Re,

Merci Hervé : Effectivement ma syntaxe TAB était incorrecte mais malheureusement je parviens pas à écrire systématiquement dans la fenêtre de Delrinafax.

Comment faire pour activer 1 application qui n'appartient pas à Office???

:huh: (pas mal ?!)

Merci aux futures réponses.
Johann.
 

Johann RSW

XLDnaute Nouveau
Bonjour le Forum,

Et merci à toi Michel pour ton info.
Mais heureusement pour moi je n'aurai pas à l'utiliser car pendant que tu étais en train de m'aider j'ai réussi par mes propres moyens (bcq de persévérences) à résoudre mon problème.
Donc voici mes lignes de codes qui pourrront peut-être servirent à d'autres...

Sub Telecopie()
Appname1 = 'Gestionnaire de messages'
Appname2 = 'Envoi Delrinafax Pro'

Application.ActivePrinter = 'DelFax sur Ne06:'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
'DelFax sur Ne06:', Collate:=True

'Attente de 2 secondes pour fin impression fax
nvlleHeure = Hour(Now())
nvlleMinute = Minute(Now())
nvlleSeconde = Second(Now()) + 5
waitTime = TimeSerial(nvlleHeure, nvlleMinute, nvlleSeconde)
Application.Wait waitTime

AppActivate (Appname1)
AppActivate (Appname2)

'Attention il faut que le destinataire soit défini dans le carnet d'@ de Delrinafax
Application.SendKeys 'M. GUY Alain', True 'Destinataire
Application.SendKeys '{Tab}', True
Application.SendKeys '118 218', True 'N° de fax
Application.SendKeys '{Tab}', True
Application.SendKeys 'World Cie', True 'Société
Application.SendKeys '{Tab}', True
Application.SendKeys 'Test', True 'Objet
Application.SendKeys '{Tab}', True
Application.SendKeys 'Salut Jo', True 'Message
Application.SendKeys Chr(13), True 'Message
Application.SendKeys Chr(13), True 'Message
Application.SendKeys 'Bye bye', True 'Message
Application.SendKeys ('%O'), True 'Pas de page de garde
Application.SendKeys 'P', True 'Pas de page de garde
Application.SendKeys 'u', True 'Pas de page de garde
Application.SendKeys ('^s'), True 'Envoi

End Sub


@+ sur le forum.
 

Discussions similaires

S
Réponses
3
Affichages
1 K
Sylvain
S
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…