Bonjour,
Je sollicite l'aide des plus expert d'entre vous ... enfin peut être que ce n'est pas si difficile mais je ne trouve que très peu de documentation et de post à ce niveau.
Pour ma part, je suis un grand débutant (motivé) mais qui a une utilisation et un apprentissage qui s'apparente à du bricolage.
Avant de demander votre aide j'ai essayé de bien parcourir cette page très détaillée :
http://qwazerty.developpez.com/tutoriels/vba/ie-et-vba-excel/#LIV-B-1
S'agissant de mon problème comme je l'ai mentionné il s'agit de vérifier la présence d'un élément dans une page IE ... La page étant celle ci
https://formulaire.extranet.univ-littoral.fr/modpwd.php
L'élément en question n'est pas non plus essentiel puisqu'en fait mon problème est identifié quand il y'a eu une erreur de saisi dans cette page ... l'adresse reste la même donc je me suis dis que le plus simple était de chercher un des éléments qui s'affichait en cas d'erreur en l’occurrence le bouton retour au formulaire (en vérifiant la page il s'agit d'un on-click (?) dont le nom est "window.history.back()"
Pour vous expliquer mon souhait il s'agirait simplement d'inscrire dans une cellule une certaine valeur si cette page venait à apparaître
Voici où j'en suis arrivé dans mon code :
J'ouvre la page internet, j'arrive à lui insérer les informations voulues, puis à fermer la page ... ce que je cherche à faire c'est en cas d'erreur retournée par la page insérer "indisponible" dans la cellule voulue
Je sollicite l'aide des plus expert d'entre vous ... enfin peut être que ce n'est pas si difficile mais je ne trouve que très peu de documentation et de post à ce niveau.
Pour ma part, je suis un grand débutant (motivé) mais qui a une utilisation et un apprentissage qui s'apparente à du bricolage.
Avant de demander votre aide j'ai essayé de bien parcourir cette page très détaillée :
http://qwazerty.developpez.com/tutoriels/vba/ie-et-vba-excel/#LIV-B-1
S'agissant de mon problème comme je l'ai mentionné il s'agit de vérifier la présence d'un élément dans une page IE ... La page étant celle ci
https://formulaire.extranet.univ-littoral.fr/modpwd.php
L'élément en question n'est pas non plus essentiel puisqu'en fait mon problème est identifié quand il y'a eu une erreur de saisi dans cette page ... l'adresse reste la même donc je me suis dis que le plus simple était de chercher un des éléments qui s'affichait en cas d'erreur en l’occurrence le bouton retour au formulaire (en vérifiant la page il s'agit d'un on-click (?) dont le nom est "window.history.back()"
Pour vous expliquer mon souhait il s'agirait simplement d'inscrire dans une cellule une certaine valeur si cette page venait à apparaître
Voici où j'en suis arrivé dans mon code :
J'ouvre la page internet, j'arrive à lui insérer les informations voulues, puis à fermer la page ... ce que je cherche à faire c'est en cas d'erreur retournée par la page insérer "indisponible" dans la cellule voulue
Code:
Private Sub CommandButton11_Click()
Dim IE As New InternetExplorer
Dim IEDoc As HTMLDocument
Dim InputULCOZoneTexte As HTMLInputElement
Dim InputULCOZoneTexte1 As HTMLInputElement
Dim InputULCOZoneTexte2 As HTMLInputElement
Dim InputULCOZoneTexte3 As HTMLInputElement
Dim InputULCOBouton As HTMLFormElement
Dim InputULCOBouton2 As HTMLFormElement
IE.Navigate "https://formulaire.extranet.univ-littoral.fr/modpwd.php"
IE.Visible = True
WaitIE IE
Set IEDoc = IE.document
Set InputULCOZoneTexte = IEDoc.all("login")
InputULCOZoneTexte.Value = ThisWorkbook.Sheets("ID").Cells(3, 2)
Set InputULCOZoneTexte1 = IEDoc.all("pwd")
InputULCOZoneTexte1.Value = ThisWorkbook.Sheets("ID").Cells(3, 3)
Range("C3").FormulaR1C1 = MOTDEPASSE(10, 2)
Set InputULCOZoneTexte2 = IEDoc.all("new")
InputULCOZoneTexte2.Value = ThisWorkbook.Sheets("ID").Cells(3, 3)
Set InputULCOZoneTexte3 = IEDoc.all("verif")
InputULCOZoneTexte3.Value = ThisWorkbook.Sheets("ID").Cells(3, 3)
WaitIE IE
Application.Wait Time + TimeSerial(0, 0, 2)
Set InputULCOBouton = IEDoc.all("submit")
InputULCOBouton.Click
With IE.Doc
Set InputULCOBouton2 = IEDoc.forms("window.history.back()")
If InputULCOBouton2 = True Then
ThisWorkbook.Sheets("ID").Cells(3, 8).Value = "Indisponible"
End If
End With
Application.Wait Time + TimeSerial(0, 0, 5)
IE.Quit
Set IE = Nothing
Set IEDoc = Nothing
Range("D3:H3").ClearContents
End Sub