Application.Ontime et procédure avec arguments

antha

XLDnaute Occasionnel
[Résolu] Application.Ontime et procédure avec arguments

Bonjour à tou(te)s !

Je cherche à séquencer une suite de touches sur IE à partir d'Excel.

Pour cela, je dois insérer des pauses dans la procédure.
J'ai trouvé une méthode en passant par Sleep(), mais l'ordonnancement des touches ne se fait pas correctement.

Je suis donc passé par Application.Ontime. Tout marche correctement à un détail près.

Je voudrais qu'entre certains Sendkeys, il utilise une date que je passe en variable. Le problème.....c'est que je n'arrive pas à passer la variable quand j'appelle ma procédure avec Ontime. J'ai bien trouvé une méthode sur un autre forum, mais cela ne fonctionne pas.

EDIT :
J'arrive finalement à faire passer les valeurs à la seconde procédure.

En revanche, avec la même syntaxe, cela ne marche pas de la 2e à la 3e proc.
Au lieu de chercher "Select_Actes" avec comme arguments les dates rentrées, il cherche "Select_Actes 01/01/2009,15/01/2009" (avec les dates en format purement numérique) et forcément il ne trouve pas... !


EDIT 2 :

En fait il semblerait qu'il ne conserve pas la date au format jj/mm/aaaa lorsqu'il passe la variable à la seconde procédure : elle prend un format numérique.
J'ai essayé en mettant Date_D = CStr(Date_D), mais cela ne change rien ...



Je vous mets le code que j'utilise... Que faudrait-il changer ?

Merci de votre aide,
Bonne journée.

Code:
Sub Lance_IE
Dim a
Dim Date_D As String
Dim DAte_F As String

Date_D = InputBox("Date de début ?")
DAte_F = InputBox("Date de fin ?")
a = Shell("C:\Program Files\Internet Explorer\iexplore.exe http://campo.bsr.aphp.fr:7777/ARCCAM_CCP1ABC/", vbNormalFocus)
[B]Application.OnTime Now + TimeValue("00:00:02"), "'Login_CCAM " & date_D & "," & date_f & "'"
[/B]
End Sub

Puis :
Code:
Sub Login_CCAM(Date_D As String, DAte_F As String)
Application.SendKeys "LOGIN{TAB}MDP{TAB}~"
[B]Application.OnTime Now + TimeValue("00:00:02"), "'Select_Actes " & date_D & "," & date_f & "'"[/B]
End Sub

Code:
Sub Select_Actes(Date_D As String, DAte_F As String)

Application.SendKeys "{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}~"
Application.OnTime Now + TimeValue("00:00:02"), "'Choix_Serv " & date_D & "," & date_f & "'"
End Sub

Code:
Sub Choix_Serv(Date_D As String, DAte_F As String)
Application.SendKeys "{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}02{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}" & Date_D & "" & DAte_F & "~"
End Sub
 
Dernière édition:

youky(BJ)

XLDnaute Barbatruc
Re : Application.Ontime et procédure avec arguments

Bonjour antha,
>J'ai essayé en mettant Date_D = CStr(Date_D), mais cela ne change rien ...
A essayer...
Date_D= CDbl(Date_D)
ceci renvoie la date en format numéric aujourdhui c'est 39926
Si tu as appliqué un format Date dans les cellules c'est seulement le format, excel retiens que le chiffre.
 

antha

XLDnaute Occasionnel
Re : Application.Ontime et procédure avec arguments

Bonjour,

Merci de ta réponse.

En fait, j'ai réussi en entourant de guillemet la saisie des inputbox, et en recommencant après l'entrée de chacune des procédures suivantes. En fin de parcours, la date arrive bien au format jj/mm/aaaa.

Je ne sais pas si c'est la méthode la plus orthodoxe, mais en tout cas, cela marche :p

Bon we !
 

Discussions similaires

Statistiques des forums

Discussions
312 223
Messages
2 086 403
Membres
103 201
dernier inscrit
centrale vet