Excel peut-il ouvrir une page internet?

Icedarts

XLDnaute Occasionnel
En fait il s'agit plutot de savoir si excel peut ouvrir un page web et remplir des cases qui se trouvent sur cette page?
 
Dernière édition:

cbea

XLDnaute Impliqué
Re : Excel peut-il ouvrir une page internet?

Bonjour Icedarts,

Voici une solution pour ouvrir par exemple la page Google :
Code:
Private 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 test()
  Dim hwnd As Long
  ShellExecute hwnd, "open", "http://www.google.fr", "", "", 1
End Sub

Après pour saisir dans la page, je ne sais pas trop. Il faudrait voir la page en question.
 

Icedarts

XLDnaute Occasionnel
Re : Excel peut-il ouvrir une page internet?

Alors voila la page en question:



Voila le lien:

Résultats

Je ne sais pas pourquoi mais on arrive sur la page précédente (les 2 ont la même adresse...)

Donc une fois sur cette page cliquer sur opérateur et vous arriverez sur la bonne page (l'image au dessus).

Ce que je voudrais savoir c'est si excel est capable de rentrer des nombres dans les cases blanches (ou j'ai mis les fleches rouges)

Et voila la série de nombres:
3023 30025
4070 40003
5011 50004
6005 60015
7011 70001
8007 80258
10085 100227
12035 120015
16009 160003
17008 170005
19002 190141
20069 200205
21001 210209
22010 220015
24014 240001
27004 270006
28006 280018
29002 290005
31017 310007
34009 340002
35006 350010
38006 380037
39044 390020
41003 410024
42009 420015
43048 430180
45027 450008
47044 470010
48004 480001
49008 490020
50004 500050
52090 520017
53003 530005
56001 560003
58005 580030
62010 620001
66002 660019
67008 670015
70005 700001
74017 740015

Manuellement c'est fastidieux... ;)
 
C

Compte Supprimé 979

Guest
Re : Excel peut-il ouvrir une page internet?

Salut Icedarts,

Pour moi ce n'est pas possible !
Il faut pouvoir appuyer sur un bouton du formulaire !

Si tu as les droits administrateur de la base, tu peux le faire, en attaquant directement la BdD !?

A+
 

myDearFriend!

XLDnaute Barbatruc
Re : Excel peut-il ouvrir une page internet?

Bonsoir Icedarts, cbea, BrunoM45,

Dans le fichier joint, peut-être une façon simple d'arriver à tes fins... il suffit de copier tes valeurs dans les colonnes A et B de la feuille 1 et de cliquer sur le bouton GO pour traiter les données dans la page web au fur et à mesure...

Evidemment, on pourrait créer un automatisme complet qui t'éviterait de cliquer sur le bouton à chaque fois, mais tu ne dis pas ce que tu fais de la page web qui suit en résultat... (par ailleurs, j'imagine que les données que tu donnes sont fictives ou périmées compte tenu du résultat obtenu...)

J'ai utilisé un contrôle WebBrowser et le code ci-dessous dans la feuille 1 :
Code:
[COLOR=GRAY][B][I]DANS LE MODULE DE CODE DE LA FEUILLE 1[/I][/B][/COLOR]

[COLOR=NAVY]Option Explicit[/COLOR]
[COLOR=GREEN]'myDearFriend!  -  www.mdf-xlpages.com[/COLOR]
[COLOR=NAVY]Const[/COLOR] UrlDepart [COLOR=NAVY]As String[/COLOR] = "http://www.france-darts.com/gestion/htm/Ope.htm"

[COLOR=NAVY]Private Sub[/COLOR] btnGo_Click()
    WebBrowser1.Navigate UrlDepart
[COLOR=NAVY]End Sub[/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] btnRAZ_Click()
    Columns("A:B").Interior.ColorIndex = xlNone
[COLOR=NAVY]End Sub[/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] WebBrowser1_DocumentComplete([COLOR=NAVY]ByVal[/COLOR] pDisp [COLOR=NAVY]As Object[/COLOR], URL [COLOR=NAVY]As Variant[/COLOR])
[COLOR=NAVY]Static[/COLOR] L [COLOR=NAVY]As Long
    If[/COLOR] URL = UrlDepart [COLOR=NAVY]Then
        If[/COLOR] Cells(1, 1).Interior.ColorIndex = xlNone [COLOR=NAVY]Then[/COLOR] L = 0
        L = L + 1
        [COLOR=NAVY]With[/COLOR] WebBrowser1.Document
            .all("joueur").Value = Cells(L, 1).Text
            .all("equipe").Value = Cells(L, 2).Text
            .all("valider").Click
            Range(Cells(L, 1), Cells(L, 2)).Interior.ColorIndex = 6
        [COLOR=NAVY]End With
    End If
End Sub[/COLOR]
Cordialement,
 

Pièces jointes

  • mDF ControlPageWeb.zip
    15 KB · Affichages: 77
Dernière édition:

Icedarts

XLDnaute Occasionnel
Re : Excel peut-il ouvrir une page internet?

Voila j'ai echangé les 2 colonnes et ça fonctionne impec!!!

S'il est possible d'appuyer sur envoyer automatiquement je suppose qu'il est possible d'appuyer sur d'autres boutons dans la pages 2?

Si oui,

Il faut cliquer sur le "ok" de "classement équipes"
On arrive donc sur le classement des équipes.
La il faut faire ctrl A, ctrl C puis en feuile 2 du classeur excel ctrl V et supprimer les 3 premiers lignes de ce qui a été copié!!!
Voila c'est simple ptdr!!!
Je joins le classeur avec les modifications des colonnes et sur la feuille 2!!!

Si c'est pas possible ta solution me fait déjà gagner pas mal temps!!!
Merci d'avance!
 

Pièces jointes

  • mDF ControlPageWeb.xls
    38.5 KB · Affichages: 101
Dernière édition:

myDearFriend!

XLDnaute Barbatruc
Re : Excel peut-il ouvrir une page internet?

Re,

...Si c'est pas possible ta solution me fait déjà gagner pas mal temps!!!...
Normalement, tu devrais pouvoir en gagner davantage... ;)

Ci-joint, le fichier modifié pour tenter de répondre à ta demande...

J'ai modifié la procédure WebBrowser1_DocumentComplete() comme suit :
Code:
[COLOR=NAVY]Private Sub[/COLOR] WebBrowser1_DocumentComplete([COLOR=NAVY]ByVal[/COLOR] pDisp [COLOR=NAVY]As Object[/COLOR], URL [COLOR=NAVY]As Variant[/COLOR])
[COLOR=NAVY]Dim[/COLOR] TabTemp [COLOR=NAVY]As Variant
Dim[/COLOR] L2 [COLOR=NAVY]As Long[/COLOR], Lign [COLOR=NAVY]As Long
Dim[/COLOR] Col [COLOR=NAVY]As Byte
Static[/COLOR] L [COLOR=NAVY]As Long
    If[/COLOR] URL = UrlDepart [COLOR=NAVY]Then
        If[/COLOR] Cells(1, 1).Interior.ColorIndex = xlNone [COLOR=NAVY]Then[/COLOR] L = 0
        L = L + 1
        [COLOR=NAVY]With[/COLOR] WebBrowser1.Document
            .all("joueur").Value = Cells(L, 1).Text
            .all("equipe").Value = Cells(L, 2).Text
            .all("valider").Click
            Range(Cells(L, 1), Cells(L, 2)).Interior.ColorIndex = 6
        [COLOR=NAVY]End With
    ElseIf[/COLOR] URL = "http://www.france-darts.com/gestion/htm/ope.asp" [COLOR=NAVY]Then[/COLOR]
        WebBrowser1.Document.all("B5").Click
    [COLOR=NAVY]ElseIf[/COLOR] URL = "http://www.france-darts.com/gestion/htm/moyequ.ASP" [COLOR=NAVY]Then[/COLOR]
        Application.ScreenUpdating = [COLOR=NAVY]False[/COLOR]
        TabTemp = Split(WebBrowser1.Document.Body.InnerText(), vbCrLf)
        [COLOR=NAVY]With[/COLOR] Sheets("Feuil2")
            .Rows("2:65536").Delete
            Lign = 2
            [COLOR=NAVY]For[/COLOR] L2 = 3 [COLOR=NAVY]To UBound[/COLOR](TabTemp)
                Col = Col + 1
                [COLOR=NAVY]If[/COLOR] Col > 7 [COLOR=NAVY]Then[/COLOR]
                    Col = 1
                    Lign = Lign + 1
                [COLOR=NAVY]End If[/COLOR]
                .Cells(Lign, Col).Value = TabTemp(L2)
            [COLOR=NAVY]Next[/COLOR] L2
        [COLOR=NAVY]End With[/COLOR]
        Application.ScreenUpdating = [COLOR=NAVY]True[/COLOR]
        MsgBox "Ok, Feuil2 mise à jour !"
    [COLOR=NAVY]End If
End Sub[/COLOR]
Cela dit, j'avoue que je ne te suis pas très bien... que fais-tu des données récupérées en Feuil2 ? Que deviennent-elles avant de passer au déroulement suivant ?

Cordialement,
 

Pièces jointes

  • mDF ControlPageWeb2.zip
    18.2 KB · Affichages: 61
Dernière édition:

Icedarts

XLDnaute Occasionnel
Re : Excel peut-il ouvrir une page internet?

Oups j'ai oublié de préciser un point important je pense.
En feuille 2 il faut que les données se collent les unes à la suite des autres ;)
Cela sert à faire un classement global.
 

myDearFriend!

XLDnaute Barbatruc
Re : Excel peut-il ouvrir une page internet?

Re,

Maintenant que je pense avoir compris où tu voulais en venir... Ci-joint la dernière version du fichier.

Attention : un clic sur le bouton GO enchaîne maintenant les traitements en boucle (j'ai réduis ta liste de départ pour mes tests, il t'appartient de recoller la liste entière pour les tiens).

Version finale du code utilisé :
Code:
[COLOR=GRAY][B][I]DANS LE MODULE DE CODE DE LA FEUILLE 1[/I][/B][/COLOR]

[COLOR=NAVY]Option Explicit[/COLOR]
[COLOR=GREEN]'myDearFriend!  -  www.mdf-xlpages.com[/COLOR]
[COLOR=NAVY]Const[/COLOR] UrlDepart [COLOR=NAVY]As String[/COLOR] = "http://www.france-darts.com/gestion/htm/Ope.htm"

[COLOR=NAVY]Private Sub[/COLOR] btnGo_Click()
    WebBrowser1.Navigate UrlDepart
[COLOR=NAVY]End Sub[/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] btnRAZ_Click()
    Columns("A:B").Interior.ColorIndex = xlNone
    Sheets("Feuil2").Rows("2:65536").Delete
[COLOR=NAVY]End Sub[/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] WebBrowser1_DocumentComplete([COLOR=NAVY]ByVal[/COLOR] pDisp [COLOR=NAVY]As Object[/COLOR], URL [COLOR=NAVY]As Variant[/COLOR])
[COLOR=NAVY]Dim[/COLOR] TabTemp [COLOR=NAVY]As Variant
Dim[/COLOR] L2 [COLOR=NAVY]As Long[/COLOR], Lign [COLOR=NAVY]As Long
Dim[/COLOR] Col [COLOR=NAVY]As Byte
Static[/COLOR] L [COLOR=NAVY]As Long
    If[/COLOR] URL = UrlDepart [COLOR=NAVY]Then
        If[/COLOR] Cells(1, 1).Interior.ColorIndex = xlNone [COLOR=NAVY]Then[/COLOR] L = 0
        L = L + 1
        [COLOR=NAVY]With[/COLOR] WebBrowser1.Document
            .all("joueur").Value = Cells(L, 1).Text
            .all("equipe").Value = Cells(L, 2).Text
            .all("valider").Click
            Range(Cells(L, 1), Cells(L, 2)).Interior.ColorIndex = 6
        [COLOR=NAVY]End With
    ElseIf[/COLOR] URL = "http://www.france-darts.com/gestion/htm/ope.asp" [COLOR=NAVY]Then[/COLOR]
        WebBrowser1.Document.all("B5").Click
    [COLOR=NAVY]ElseIf[/COLOR] URL = "http://www.france-darts.com/gestion/htm/moyequ.ASP" [COLOR=NAVY]Then[/COLOR]
        Application.ScreenUpdating = [COLOR=NAVY]False[/COLOR]
        TabTemp = Split(WebBrowser1.Document.Body.InnerText(), vbCrLf)
        [COLOR=NAVY]With[/COLOR] Sheets("Feuil2")
            Lign = .Cells(Application.Rows.Count, 1).[COLOR=NAVY]End[/COLOR](xlUp).Row + 1
            [COLOR=NAVY]For[/COLOR] L2 = 3 [COLOR=NAVY]To UBound[/COLOR](TabTemp)
                Col = Col + 1
                [COLOR=NAVY]If[/COLOR] Col > 7 [COLOR=NAVY]Then[/COLOR]
                    Col = 1
                    Lign = Lign + 1
                [COLOR=NAVY]End If[/COLOR]
                .Cells(Lign, Col).Value = TabTemp(L2)
            [COLOR=NAVY]Next[/COLOR] L2
        [COLOR=NAVY]End With[/COLOR]
        Application.ScreenUpdating = [COLOR=NAVY]True
        If[/COLOR] Cells(L + 1, 1) <> "" [COLOR=NAVY]Then[/COLOR] btnGo_Click [COLOR=NAVY]Else[/COLOR] MsgBox ("Traitement terminé !")
    [COLOR=NAVY]End If
End Sub[/COLOR]
En espérant t'avoir aidé...

Cordialement,
 

Pièces jointes

  • mDF ControlPageWeb3.zip
    18.2 KB · Affichages: 74

Icedarts

XLDnaute Occasionnel
Re : Excel peut-il ouvrir une page internet?

Si si j'ai vu,
Tout fonctionne bien mais tu me demandes ce que deviennent les données de la feuille 2
Je te réponds que j'ai oublié de te préciser que les données doivent s'ajouter pour faire un classement global.
Peut être n'ai je pas compris ton interrogation n'hésite pas à me poser des questions!!!
 

Icedarts

XLDnaute Occasionnel
Re : Excel peut-il ouvrir une page internet?

M'avoir aidé!!!
Ce ne sont pas les mots justes je pense!
Je devrais te payer pour ça!
C'est incroyable!!!
Avec ça j'ai gagné des journées entières de boulot!!!
C'est phénoménal!
 
Dernière édition:

Discussions similaires

Réponses
1
Affichages
143

Statistiques des forums

Discussions
312 095
Messages
2 085 253
Membres
102 837
dernier inscrit
CRETE