De VBA à Internet Explorer [Résolu]

AngeliusMefyrx 52 Messages postés lundi 20 mars 2006Date d'inscription 14 octobre 2007 Dernière intervention - 1 avril 2006 à 02:43 - Dernière réponse : AngeliusMefyrx 52 Messages postés lundi 20 mars 2006Date d'inscription 14 octobre 2007 Dernière intervention
- 10 avril 2006 à 13:05
En fait, j'aimerais savoir comment on fait pour utiliser les objets dans le Frame d'une page internet explorer

Voici mon code:

Private Sub LISTE_DblClick(Cancel As Integer)
If ACTIVER.Value = True Then
Dim AllIE, IEnew, Database As Object
Dim PageIE As Variant
Dim i As Variant
Call COMMANDE
PageIE = 6000
Set AllIE = CreateObject("Shell.Application")
For i = 0 To AllIE.windows.Count - 1 If AllIE.windows(i).LocationURL "MONURL1" Or AllIE.windows(i).LocationURL "MONURL2" Then
LIENS = AllIE.windows(i).LocationURL
PageIE = i
i = AllIE.windows.Count - 1
End If
Next i
If PageIE = 6000 Then
Set IEnew = CreateObject("InternetExplorer.Application")
IEnew.Navigate "MONURL1"
LIENS = "MONURL1"
PageIE = AllIE.windows.Count - 1
End If
While AllIE.windows(PageIE).busy
DoEvents
Wend
Set IE = AllIE.windows(PageIE)
IE.Visible = True
Dim vUrl, vTargetFram, vPosteData, vHeaders, vFlags As String
vUrl = LIENS & "PATH DU SOUS LIENS"
vTargetFrame = "main"
Call IE.Navigate(vUrl, vFlags, vTargetFrame, vPostData, vHeaders)

----------------------------------------------

Comment je fais à cet endroit pour dire que ma boite de texte dans le frame main = "Blah"
Je semble pourvoir faire référence aux objets de cette facon
IE.Document.frames.main.Document.all(i)
i = 0à 9 pcq je sais qu'il y en a 10
Toutfois, dès que je veux faire une action, cela me cause des erreurs
Si je fais .focus ca me donne pas d'erreur.....mais réellement ca fait rien
Si je dit .MaForm.MonTextBox.Value ou plein d'autres chose, ca me donne toujours

Erreur d'execution 438
Propriété ou méthode non gérée par cet objet
--------------------
Par contre je sais que si jamais je load le frame directement dans une page entière, je suis capable de passer mes commandes

vUrl = "mon lien pour le frame"
Call IE.navigate(vUrl)
IE.Document.MaForm.MonTextBox.Value = "Abigael"
IE.Document.MaForm.MonTextBox2.Value = "Blah"
IE.Document.MaForm.MonBouton.disabled = False
IE.Document.MaForm.MonBouton.Click

Quelqu'un a une idée.........c'est vraiment pas évident, j'aimerais mieux le loader dans le frame.......
Afficher la suite 

2 réponses

Meilleure réponse
AngeliusMefyrx 52 Messages postés lundi 20 mars 2006Date d'inscription 14 octobre 2007 Dernière intervention - 10 avril 2006 à 13:05
3
Merci
Merci

Finalement j'ai compris mon problème....

Il fallait que je fasse, IE.Document.Frames.NOM.Frames.NOM.Document.NOMduform.Nomdelaboite.Value = "patente"

Bref une affaire de fou qui m'a pris plusieurs heures à découvrir......
Comme je savais pas qu'il y avait un frame dans un frame.......le nombre de temps que j'ai pris pour le trouver......c'est incroyable....mais je l'ai trouvé!!!!

Merci AngeliusMefyrx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

rvblog 794 Messages postés vendredi 4 mars 2005Date d'inscription 12 juin 2012 Dernière intervention - 4 avril 2006 à 00:23
0
Merci
Salut AngeliusMefyrx,

jettes un oeil là si tu veux, elle écrit bien :

http://www.vbfrance.com/infomsg/SELECTIONNER-DANS-LISTE-DEROULANTE-SUR-WEB-PARTIR-VB-0_697496.aspx

à+


rvblogn<SUP>
</SUP><SUP>Je veux ton bien... et je l'aurais
</SUP>

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.