Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/07/2011, 06h13   #1
Candidat au titre de Membre du Club
 
Inscription : novembre 2004
Messages : 45
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 45
Points : 10
Points : 10
Par défaut WebBrowser et remplissage automatique

Bonjour,


J'essaie de remplir un formulaire Internet en utilisant les données de ma table et le contrôle WebBrowser.
Le formulaire Internet s'affiche dans mon formulaire Access mais il ne se remplit pas.

Voici le code de la balise input du formulaire Internet:

Et voici mon code vba:

Code :
1
2
3
4
5
6
7
8
    Dim strURL As String
    Dim objIE As Object
 
    strURL = Me![URL].Value
    Set objIE = Me.WebBrowser1.Object
    objIE.Navigate strURL
 
objIE.Document.getElementById("nom").Value = "Dupont"
Merci d'avance pour votre aide.

@+
JiB@ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2011, 10h43   #2
Membre régulier
 
Homme Michaël
Développeur .NET
Inscription : avril 2008
Messages : 80
Détails du profil
Informations personnelles :
Nom : Homme Michaël
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur .NET
Secteur : Transports

Informations forums :
Inscription : avril 2008
Messages : 80
Points : 84
Points : 84
Bonjour,

il n'y a pas d'attribut id dans la balise input alors que tu fais un getElementById

mkl238 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2011, 17h28   #3
Candidat au titre de Membre du Club
 
Inscription : novembre 2004
Messages : 45
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 45
Points : 10
Points : 10
Merci pour la réponse.

J'ai testé ce code:
Code :
objIE.Document.getElementByName("nom").Value = "Dupont"
Mais j'ai une erreur "Propriété non gérée par cet objet"

Merci pour votre aide.
JiB@ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2011, 22h52   #4
Membre régulier
 
Homme Michaël
Développeur .NET
Inscription : avril 2008
Messages : 80
Détails du profil
Informations personnelles :
Nom : Homme Michaël
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur .NET
Secteur : Transports

Informations forums :
Inscription : avril 2008
Messages : 80
Points : 84
Points : 84
aaah oui mais non, ca aurait été trop facile... il n'existe pas de méthode "getElementByName"

Soit tu utilises getElementById (c'est la meilleure méthode) et tu mets un attribut id dans la balise input, soit tu utilises GetElementsByTagName("input") et tu parcours chaque élément pour comparer l'attribut name et voir si il est = à nom...

un truc dans le genre: (mais je ne saurais pas tester)


Code :
1
2
3
4
5
6
For Each element In objIE.Document.GetElementsByTagName("input")
    if "nom" = element.GetAttribute("name") Then
        element.InnerText = "Dupond"
        Exit For
    End if
Next
mkl238 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2011, 02h40   #5
Candidat au titre de Membre du Club
 
Inscription : novembre 2004
Messages : 45
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 45
Points : 10
Points : 10
OK merci beaucoup et bonne fête nationale !

@+
JiB@ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h19.


 
 
 
 
Partenaires

Hébergement Web