Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1311 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer des données depuis Excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récupérer des données depuis Excel

n°1596984
Anonymuser
Posté le 08-08-2007 à 00:58:57  profilanswer
 

Bonjour à toutes et à tous,
 
Je cherche un moyen pour récupérer des données d'une page web à partir d'Excel à l'ouverture du classeur.  
Est-ce possible?  
 
Il faut savoir que les données seront soit sous forme de tableau, ou encore de simples fichiers Excel.
 
Merci pour votre aide

mood
Publicité
Posté le 08-08-2007 à 00:58:57  profilanswer
 

n°1596988
kiki29
Posté le 08-08-2007 à 02:43:06  profilanswer
 

Menu Données | Données Externes | Nouvelle Requête sur le Web
Entrer l'URL puis cocher les "Fleches" qui t'intéresse
Suivre l'assistant qui te proposera le choix de la cellule de Départ
 
utilise le Macro Recorder puis allège ( par étape ) manuellement le code généré


Message édité par kiki29 le 08-08-2007 à 02:43:51
n°1597438
Anonymuser
Posté le 08-08-2007 à 20:07:49  profilanswer
 

Merci beaucoup pour la piste mais je crois que je n'ai pas été assez précis dans ma requete. En réalité, il s'agit d'importer un fichier hébergé sur le Web avec une adresse du type : http://www.blablabla.com/mon_fichier_Excel.xls
 
De même, les autres données se trouvent sur un page web, mais je ne connais pas le chemin exact. En fait il s'agit d'une page du type: http://ma_page_web/blablabla.rha et il s'agit de cliquer sur le bouton search pour afficher les valeurs qui m'interessent.  
Est-il possible d'automatiser egalement cette tache?
 
 
Merci encore pour votre aide plus que salutaire.
 
++  :)

n°1597523
kiki29
Posté le 09-08-2007 à 02:24:53  profilanswer
 

Fais ta recherche cela générera des infos dans la barre d'adresse http://....
Puis via le macro recorder d'excel et une requete Web tu auras les données de ta recherche
Cela te permettra d'avoir la syntaxe et de modifier éventuellemnt le search via ce code


Message édité par kiki29 le 09-08-2007 à 02:25:30
n°1597969
Anonymuser
Posté le 09-08-2007 à 20:30:21  profilanswer
 

Bonjour,
 
Tout d'abord, merci pour ton aide Kiki.
 
Ensuite, je suis désolé mais je ne vois pas où tu veux en venir lorsque tu parles de recherche. Il faut savoir que je n'ai jamais utilisé la fonction macrorecorder.
 
Merci encore.

n°1597973
kiki29
Posté le 09-08-2007 à 20:54:01  profilanswer
 


http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/liste_sujet-1.htm
Rechercher Recuperation
Cliquer sur Enregistrer une page Web en TXT
http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/enregistrer-page-txt-sujet_103058_1.htm
 
Si Macro Recorder Excel activé
 
Sub Macro1()
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/enregistrer-page-txt-sujet_103058_1.htm" _
        , Destination:=Range("A1" ))
        .Name = "enregistrer-page-txt-sujet_103058_1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
 .....

n°1598721
Anonymuser
Posté le 12-08-2007 à 16:18:43  profilanswer
 

Je reviens aux nouvelles.
 
J'ai beau retourner le problème dans tous les sens, je ne trouve pas la solution, et pourtant  je crois avoir compris ce que tu m'expliques Kiki..
 
Chaque fois que je tente d'ouvrir le classeur depuis le navigateur d'Excel, le programme tourne en rond et une boîte de dialogue me propose:
-D'ouvrir le dossier
-d'ouvrir le fichier
 
Quand je clique rien ne se passe.
 
Je pense le probleme plus epineux qu'il n'y paraît à premiere vue.
 
Voici un exemple:
 
La page contenant le fichier dont je souhaiterai automatiser le telechargement dans une feuille via un bouton dans Excel:
 
http://excelfiles.site.voila.fr/
 
 
Voila rame parfois, mais j'ai perdu mon acces ftp free..
 
Merci
 
Edit:
 
Je crois avoir trouvé une piste ici..


Message édité par Anonymuser le 12-08-2007 à 16:56:40
n°1598727
kiki29
Posté le 12-08-2007 à 17:00:52  profilanswer
 

Sans forcer via le macro recorder +adaptation manuelle


........
    Application.DisplayAlerts = False
    With ActiveSheet.QueryTables.Add(Connection:=Array( _
        "OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=http://excelfiles.site.voila.fr/dossier/Classeura1.xls;Mode=Share Deny" _
        , _
        " Write;Extended Properties=""HDR=YES;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet" _
        , _
        " OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1" _
        , _
        ";Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy" _
        , _
        " Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _
        ), Destination:=Range("A1" ))
        .CommandType = xlCmdTable
        .CommandText = Array("Feuil1$" )
        .Name = "Classeura1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = True
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
        .SourceDataFile = "http://excelfiles.site.voila.fr/dossier/Classeura1.xls"
        .Refresh BackgroundQuery:=False
    End With
    Application.DisplayAlerts = True
.....


Message édité par kiki29 le 12-08-2007 à 17:01:12
n°1598731
Anonymuser
Posté le 12-08-2007 à 17:21:29  profilanswer
 

Yes ça fonctionne merci, je ne comprends pas pourquoi le macro recorder ne fonctionne pas.  
En fait, je pense plutôt que je ne selectionnais pas le bon mode (Données Externes | Nouvelle Requête sur le Web ) tout simplement, et ce en voyant le debut du code qu'il t'a généré..

n°1598737
kiki29
Posté le 12-08-2007 à 18:09:30  profilanswer
 

J'ai parlé d'adaptation du code généré par le macro recorder et c'est pour cela que ça marche : je lui ai collé l'info manuellement après qu'il ait généré son Volapük

mood
Publicité
Posté le 12-08-2007 à 18:09:30  profilanswer
 

n°1598740
Anonymuser
Posté le 12-08-2007 à 18:47:27  profilanswer
 

Ok, mais pour la générer, par quel menu passes-tu.  
 
Je pense que tu fais Données| Données Externes | Nouvelle Requête sur le Web, mais après je ne vois pas, j'ai essayé plusieurs combinaisons, sans succès.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer des données depuis Excel

 

Sujets relatifs
Affichage des données dans une position bien définisuppression automatique de ligne sur excel [vba]
Récupérer fichier son depuis serveur distantA L'AIDE!!! recuperer et comparer date et heure [VBA]
Problème de mise en page sous EXCEL à conditions multiplesRécupérer des données depuis une feuil excel.
Recuperer données SQL en fichier Excel[VBA Excel] récupérer des données de table Access dans Excel en VBA
[VBS] Récuperer des données par mail sous Excelrécupérer des données dans un fichier excel en javascript
Plus de sujets relatifs à : Récupérer des données depuis Excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR