Bonjour,
Pour une BDD je dois ouvrir firefox sur une page précise, ça c'est OK.
Est-il possible de placer le contenu du presse-papier dans une zone de texte bien précise de cette page web ?
Merci pour vos réponses.
A+
Bonjour,
Pour une BDD je dois ouvrir firefox sur une page précise, ça c'est OK.
Est-il possible de placer le contenu du presse-papier dans une zone de texte bien précise de cette page web ?
Merci pour vos réponses.
A+
Salut
c'est bien sur possible de piloter FF depuis VBA
https://www.developpez.net/forums/d9...e-firefox-vba/
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise
Pas de question technique par MP, je ne réponds pas
Mes ouvrages :
Apprendre à programmer avec Access 2016, Access 2019 et 2021
Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business Central
Pensez à consulter la FAQ Excel et la FAQ Access
Derniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,
Autres tutos
Salut,
Merci pour ta réponse, mais ça a l'air assez instable, et pas bcp de code en exemple
J'ai le tuto http://qwazerty.developpez.com/tutor...-et-vba-excel/
Mais c pour IE et moi j'ai Firefox ou Edge
En plus j'ai un message d'erreur comme quoi le composant ActiveX ne peut pas créer d'objet erreur 429.
C pas facile
Je reviens avec ma recherche pour remplir des zones dans une page web
J'aimerais après avoir copié un numéro de TVA Belge ou étranger dans le presse-papier et cliqué sur un bouton dans mon form, ouvrir une page web (ça c OK) et remplir deux chams sur cette page http://ec.europa.eu/taxation_customs...tResponse.html
Dans la zone de liste, il faudrait que le pays soit sélectionné automatiquement et que le numéro de TVA soit collé automatiquement également.
Est-ce possible ? et surtout comment faire cela ?
Je fais des recherches sur le net et ici aussi, mais je ne trouve pas, de plus quand j'essaie des codes trouvé ci et là, j'ai le message d'erreur - voir post précédent.
Merci pour votre aide.
A+
Salut,
et le code applique a IE n'est-il pas simplement transposable sous FF ?
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise
Pas de question technique par MP, je ne réponds pas
Mes ouvrages :
Apprendre à programmer avec Access 2016, Access 2019 et 2021
Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business Central
Pensez à consulter la FAQ Excel et la FAQ Access
Derniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,
Autres tutos
Comme je l'ai dit dans le post précédent, j'ai un message d'erreur et je ne sais pas le régler.
Pour l'instant j'ouvre FF comme cela
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Option Explicit Public Declare Function ShellExecute Lib "shell32.dll" _ Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Sub Ouvrir_Web_Verif_TVA() Dim Fichier As String Fichier = "http://ec.europa.eu/taxation_customs/vies/vatRequest.html" ShellExecute 0, "", Fichier, "", "", 0 End Sub
Ok, mais dans la mesure ou ton code generant l'erreur 429 n'a pas encore ete partage ici, on specule beaucoup =]
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise
Pas de question technique par MP, je ne réponds pas
Mes ouvrages :
Apprendre à programmer avec Access 2016, Access 2019 et 2021
Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business Central
Pensez à consulter la FAQ Excel et la FAQ Access
Derniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,
Autres tutos
Si, je l'ai signalé dans un post, le voici, c'est d'après le tuto
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub PremierIE() 'Déclaration des variables Dim IE As New InternetExplorer 'Chargement d'une page web Google IE.Navigate "www.google.fr" 'Affichage de la fenêtre IE IE.Visible = True 'On libère la variable IE Set IE = Nothing End Sub
Ok, mais pourquoi tu nous parles de FF si tu utilises du code pour IE ?
Quel est le code qui te plante sous FF ?
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise
Pas de question technique par MP, je ne réponds pas
Mes ouvrages :
Apprendre à programmer avec Access 2016, Access 2019 et 2021
Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business Central
Pensez à consulter la FAQ Excel et la FAQ Access
Derniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,
Autres tutos
Bon, je reprends
J'ai essayé d'ouvrir une page web avec du code vba pour des essais avec ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Option Explicit Public Declare Function ShellExecute Lib "shell32.dll" _ Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Sub Ouvrir_Web_Verif_TVA() Dim Fichier As String Fichier = "http://ec.europa.eu/taxation_customs/vies/vatRequest.html" ShellExecute 0, "", Fichier, "", "", 0 End Sub
J'ai win 10 et donc Edge, si je mets ce code, ça me donne l'erreur 429
Comment je dois procéder pour FF pour remplir des champs dans la page web ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub PremierIE() 'Déclaration des variables Dim IE As New InternetExplorer 'Chargement d'une page web Google IE.Navigate "www.google.fr" 'Affichage de la fenêtre IE IE.Visible = True 'On libère la variable IE Set IE = Nothing End Sub
Merci
Bonjour ElectroSat03,
Je vois que tu veux faire du screen scrape sur le site VIES pour verifier des numéros de TVA.
C'est possible mais tous ceux qui ont essayé te diront en effet que c'est très instable. Ne perds plus ton temps avec ça.
Par contre, il y a une autre solution, et celle-la elle est super : un web service. Va voir les FAQ de VIES : http://ec.europa.eu/taxation_customs...formation.html
C'est une autre technologie mais tu verras c'est stable, ça tourne 4 fois plus vite qu'un screen scrape de la page web. C'est VRAIMENT la voie à suivre.
Salut PipoWil,
Merci pour ta réponse, mais le service web, je le connais c'est justement là-dessus que je voudrais enter les données automatiquement.
Si ce n'est pas de ça que tu parles, tu peux être plus précis.
Merci
A+
Bonjour,
Pour un service Web, tu ne dois même pas te préocuper du browser Edge, Firefox IE ou autre. Tu dois simplement envoyer ton enveloppe XML via http directement dans VBA. Tu ne verras rien à l'écran.
1 créer une enveloppe XML <?xml version="1.0" encoding="utf-8"?>
l'enveloppe contient <soapenv: ici les références aux namespaces ne sont pas toujours très évidentes. Attention à l'orthographe! XML est case sensitive
1.1 <Header>2 utiliser l'url donnée dans le wsdl. C'est l'adresse où le service est actif et où tu dois envoyer ton fichier. Pour VIES : http://ec.europa.eu/taxation_customs...heckVatService
1.2 <Body>
3 tu ouvres une connexion HTTP et tu fais un POST pour envoyer ton fichier
4 tu écoutes la réponse. La réponse SOAP est aussi un fichier XML
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 strEnv = "<?xml version=""1.0"" encoding=""utf-8""?>" strEnv = strEnv & "<soapenv:Envelope xmlns=""urn:ec.europa.eu:taxud:vies:services:checkVat"" " strEnv = strEnv & "xmlns=""urn:ec.europa.eu:taxud:vies:services:checkVat:types"" " strEnv = strEnv & "xmlns:soapenc=""http://schemas.xmlsoap.org/soap/encoding/"" " strEnv = strEnv & "xmlns:impl=""urn:ec.europa.eu:taxud:vies:services:checkVat"" " strEnv = strEnv & "xmlns:apachesoap=""http://xml.apache.org/xml-soap"" " strEnv = strEnv & "xmlns:wsdl=""http://schemas.xmlsoap.org/wsdl/"" " strEnv = strEnv & "xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" " strEnv = strEnv & "xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" " strEnv = strEnv & "xmlns:wsdlsoap=""http://schemas.xmlsoap.org/wsdl/soap/"" >" strEnv = strEnv & " <soapenv:Header/>" strEnv = strEnv & " <soapenv:Body>" strEnv = strEnv & " <checkVatApprox>" strEnv = strEnv & " <countryCode>"IT"</countryCode>" strEnv = strEnv & " <vatNumber>"011567890"</vatNumber>" 'the vat nbr we are verifying strEnv = strEnv & " <traderName/>" strEnv = strEnv & " <traderCompanyType/>" strEnv = strEnv & " <traderStreet/>" strEnv = strEnv & " <traderPostcode/>" strEnv = strEnv & " <traderCity/>" strEnv = strEnv & " <requesterCountryCode>"BE"</requesterCountryCode>" strEnv = strEnv & " <requesterVatNumber>"0123456789"</requesterVatNumber>" strEnv = strEnv & " </checkVatApprox>" strEnv = strEnv & " </soapenv:Body>" strEnv = strEnv & "</soapenv:Envelope>" strURL = "http://ec.europa.eu/taxation_customs/vies/services/checkVatService" Set xmlhtp = New MSXML2.XMLHTTP60 xmlhtp.Open "POST", strURL, False xmlhtp.setRequestHeader "Content-Type", "text/xml" xmlhtp.send strEnv strResponseText = xmlhtp.responseText Debug.Print strResponseText
Ah OK, ça n'a pas l'air trop mal ça.
Je vais essayer ça la semaine prochaine, car W-E chargé.
Merci pour ton aide, je reviendrai vers toi si je bloque qq part, si tu veux bien.
Merci
A+
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager