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

Statistiques des forums

Discussions
312 200
Messages
2 086 163
Membres
103 149
dernier inscrit
Deepkneec