IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

QueryTables sous Access en vba


Sujet :

VBA Access

  1. #1
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut QueryTables sous Access en vba
    Bonjour,

    Je cherche à récupérer les données sur un site. J'y parviens par le biais d'Excel avec la méthode QueryTables mais j'aimerais pouvoir y parvenir également sous Access....Quelqu'un à t'il une piste autre que celle de créer un fichier sous access ?


    Merci

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonsoir.

    Si tu veux juste une piste, en voici une giboyeuse : la bibli MSXML2.
    Elle correspond à une dll du system32, comme msxml6.dll

    Si tu veux du code, précise ta chaîne de connexion.

    Cordialement,

    PGZ

  3. #3
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut
    Bonjour

    Merci pour votre réponse, j'ai regardé du coté de msxml2 mais je ne trouve pas d'exemple de récupération de données sur un site quel qu'il soit...Je cherche plutot un équivalent de QueryTable sous Access

  4. #4
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    DOnc ce n'est pas une piste, mais un code que tu cherches

    Es-tu arrivé à sélectionner la biblio dont je t'ai parlé dans mon premier message?

    A+

    PGZ

  5. #5
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut
    mais nonnnn faut pas le prendre comme ça !!! Oui j'ai sélectionné la référence msxml6.dll mais cette bibli n'est elle pas réservée au format xml ? (lequel je ne maitrise pas forcément d'ailleurs....)

  6. #6
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bien!

    Tu as réussi à sélectionner la bibli

    Tu vas l'utiliser pour charger le csv, sous forme de texte, directement dans une chaîne de caractères, sans passer par un enregistrement sur disque. C'est très simple :
    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
    Sub Mut()
    Dim oXMLHTTP As MSXML2.XMLHTTP
    Dim sHTTP As String
    Dim sLecture As String 'reçoit le texte du csv
     
    sHTTP = "http://... " 'chaîne de requête du csv
     
    Set oXMLHTTP = New MSXML2.XMLHTTP
     
    oXMLHTTP.Open "GET", sHTTP, False
    oXMLHTTP.send
    sLecture = oXMLHTTP.responseText 'c'est dans la boîte!
     
    Set oXMLHTTP = Nothing
     
    End Sub
    On pourrait le mettre en FAQ, non?

    PGZ

  7. #7
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut
    Impeccable ça me ressort le script de la page ! Par contre comment récupérer par la suite uniquement les données voulues ?

    Oui effectivement il serait bon de l'incorporer dans la FAQ

  8. #8
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    La suite, c'est du traitement de texte classique. Pour être plus précis, il faudrait savoir ce que tu lis... et ce que tu veux en garder, et en faire!


    PGZ

  9. #9
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut
    Ok je vois...il n'y a donc pas une sorte de requete possible comme sous Excel qui inscrit tout le texte "préformaté" de la page web dans le tableur...

    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
     
        With ActiveSheet.QueryTables.Add(Connection:="URL;" & vURL, Destination:=R)
            .Name = "LaRequete"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .BackgroundQuery = True
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .WebSelectionType = xlSpecifiedTables
            .WebTables = "4"
            .WebFormatting = xlWebFormattingRTF
            .WebPreFormattedTextToColumns = True
            .WebConsecutiveDelimitersAsOne = True
            .WebSingleBlockTextImport = False
            .WebDisableDateRecognition = False
            .WebDisableRedirections = False
            .Refresh BackgroundQuery:=False
            .Delete
        End With
    Je vais voir si je peux récupérer de façon similaire les données dans une page web avec msxml6...

  10. #10
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonsoir


    Citation Envoyé par Mut Voir le message
    Je vais voir si je peux récupérer de façon similaire les données dans une page web avec msxml6...
    Sinon, tu pourras faire une procédure pour enregistrer en table les données récupérées dans la chaîne de caractères. Et ce n'est pas bien difficile...

    PGZ

  11. #11
    Mut
    Mut est déconnecté
    Membre éprouvé Avatar de Mut
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mars 2003
    Messages : 931
    Par défaut
    Je pense faire des boucles pour récupérer les parties de texte qui m'intéresse en me basant sur les ids des balises HTML. Penses-tu que ce soit une solution fiable ?

  12. #12
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonsoir,

    TransferText permet d'importer des tableaux html (balises <table> ... </table>) à condition que le fichier ou l'url finisse par htm ou html.

    Au pire, tu utilises la procédure pgz pour sauvegarder localement, en fichier .htm ou .html, la page récupérée à partir de ton url.

    Pour l'argument NomTableHTML de TransferText, bien lire l'aide d'Access.

    A+

Discussions similaires

  1. Génération pdf sous access 2010 vba
    Par facilordi dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 24/03/2015, 11h54
  2. [AC-2000] Insertion de valeurs sous Access et VBA
    Par Tydher dans le forum VBA Access
    Réponses: 5
    Dernier message: 16/05/2011, 14h05
  3. [AC-2003] apercu puis impression d'un etat sous access en vba
    Par Marc31 dans le forum IHM
    Réponses: 10
    Dernier message: 10/09/2010, 14h33
  4. création de formulaire sous access et vba
    Par sdoango dans le forum VBA Access
    Réponses: 13
    Dernier message: 02/08/2007, 09h24
  5. [SQL]Problème requete sql sous access avec vba
    Par aaliyan dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 13/04/2007, 18h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo