Bonsoir à tous,

j'ai suivi l'article https://qwazerty.developpez.com/tuto...-et-vba-excel/ pour le VBA et Internet explorer.

j'ai pu avancer sur mon code par contre je bloque sur un élement:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 
Sub WaitIE(IE As Object)
Const READYSTATE_COMPLETE = 4
   'On boucle tant que la page n'est pas totalement chargée
   Do Until Not IE.Busy And IE.readyState = READYSTATE_COMPLETE
        'Sleep (300)    'wait 0.5 second
        DoEvents
    Loop
End Sub
Sub PremierIE()
'Déclaration des variables
Dim IE As New InternetExplorerMedium
Dim FordLogin As HTMLFormElement
   'Chargement d'une page web Google
   IE.navigate "www.site.com/login.cgi"
 
   'Affichage de la fenêtre IE
   IE.Visible = True
 'On attend le chargement complet de la page
   WaitIE IE
 
      Set IEDoc = IE.document
 
   'On pointe notre Zone de texte
   Set login = IEDoc.all("userid")
 
   'On définit le texte que l'on souhaite placer à l'intérieur
   login.Value = "logiiiiii"
 
      Set pwd = IEDoc.all("b64Pwd")
 
 
 
   'On définit le texte que l'on souhaite placer à l'intérieur
   pwd.Value = "xxxx"
 
 
  ' WaitIE IE
 Application.Wait Time + TimeSerial(0, 0, 6)
 
 Set form = IEDoc.forms("logonForm")
 
'On exécute l'action Submit de la Form
'form.submit
 
  'IEDoc.forms(0).submit
   IEDoc.parentWindow.execScript "validateForm('logonForm')", "JavaScript"
      'On laisse 2 secondes au lecteur
       'Application.Wait Time + TimeSerial(0, 0, 6)
      'Sleep 2000
'IEDoc.parentWindow.execScript "return validateForm(logonForm)"
   'On libère la variable IE
   Set IE = Nothing
 
End Sub
J'ai un problème avec le bouton submit ou plutôt sur la partie Form:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
<FORM onsubmit="return validateForm(this.form);" method=post name=logonForm action=auth.cgi>
Avant de passer à la page auth.cgi il exécute une fonction javascript ( qui transforme le pwd en mot depasse)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
		 function validateForm(form) 
			{
			    if (document.forms[0].userid.value.length == 0 || document.forms[0].userid.value.length < 3) {
	       		 alert( "\ Idenue"); 
	       		 return false;
	       	    }
			    if (document.forms[0].b64Pwd.value.length == 0) { 
	       		 alert("Vous devez sse");
	       		 return false;
	       		} 
				else
		       	{
		       		var formPassword = document.forms[0].b64Pwd.value;
		       		var base64Password = base64Encode(formPassword);
 
		       		if(base64Password.length > 0)
		       		{
		       			document.forms[0].b64Pwd.value = base64Password;
		       		}
		       	}
				return true;			
			}
Dans mon code je n'arrive pas a faire passer à la page suivante. j'ai pas erreur.

si je indique IEDoc.forms(0).submit cela passe (à la page suivante, mais mauvais mdp)mais il exécute pas la partie javascript.

Quelle code je doit mettre en place plus faire le submit et le javascript en meme temps?

merci d'avance pour vos conseils


guigui69