Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Importer des valeurs de fichiers CSV sans les ouvrir

  • Initiateur de la discussion Initiateur de la discussion David73
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

David73

XLDnaute Nouveau
Bonjour,

A l'aide d'une macro dans un fichier Excel, j'aimerais importer certaines valeurs contenues dans une centaines (voir plus) de fichiers CSV.

Comme il y a beaucoup de CSV, je préfèrerais ne pas les ouvrir mais récupérer directement les valeurs ...

Je sais que des discussions traitent de ce sujet mais elle me semblent obsolètes et ne fonctionnent pas chez moi.

Merci beaucoup pour votre aide...
 
Bonjour,
Je pense que tu t'éparpilles un peu..
La première chose à faire serait, en premier lieu, de bien élaborer la requête PQ, quitte ensuite, si tu le désires, en extraire un code VBA (mais ce sera sans doute inutile, il suffira de modifier l'adresse du dossier, dans une cellule au besoin, s'il y en a d'autres à traiter)
Lorsque tu dis :
La première difficulté est que j'ai rencontrée est que je voudrais sélectionner la 3ème ligne comme entête.... et je n'y arrive pas !
Il suffit de supprimer les 2 premières lignes, puis de désigner la 1ère ligne comme en-tête. Et ensuite, selon le nombre de fichiers à traiter, insérer un index conditionnel qui permettrait de ne garder que les lignes "utiles".
Mais pour cela, il nous faudrait au moins 1 fichier "type" au format csv (@Staple1600 t'a indiqué comment le joindre sur le site).
A te relire
 
Oui, voilà, il faut passer par la macro.....
Bonjour,
Oui vous avez raison il ne faut pas écouter mes petits camarades qui préfèrent vous rendre autonome et vous proposent des choses simples que vous pourriez trop vite maîtriser.
L'obscure VBA qui demande des années de pratique est bien mieux. En plus vous serez certain d'avoir à revenir ici ou ailleurs pour qu'un grand prêtre vbiste vous dépatouille du bourbier que vous aurez construit.
Oui vous avez raison, n'apprenez rien de nouveau qui pourrait mettre en danger vos certitudes.
 
Dernière édition:

Au risque de vous décevoir, je suis beaucoup plus à l'ais en VBA qu'en Powerquery ; et de ce fait, je suis plus autonome et donc moins tenté de demander aux autres de "dépatoullier mon bourbier".
 

J'ai quelques milliers de CSV à traiter et s'il suffisait de supprimer les 2 premières lignes, je l'aurais déjà fait...
 
J'ai quelques milliers de CSV à traiter et s'il suffisait de supprimer les 2 premières lignes, je l'aurais déjà fait...
Euh, comment dois-je prendre cette "réponse"...?
Si tu t'arrêtes à cette ligne, effectivement, tu sais le faire...
Maintenant, c'est toi qui a besoin d'aide, nous, on voulait (je dis bien "voulais", car ce sera sans moi..) juste t'aider, t'orienter..
Bon courage
 
Bonjour le fil David73, Hasco 😉; bhbh

Petite question au débotté à David
Est-ce que tu as fait le test PQ que j'ai détaillé plus bas ?
(et qui se résume à moins de 10 clics) (*)
NB: Je viens de le refaire en laissant tourner l'enregistreur de macros
Et O surprise !
[X] Moi qui croyait qu'on ne pouvait pas manipuler PQ par le biais de VBA

* : une fois la requête créée manuellement, on la conserve, il n'y a plus qu'à l'actualiser.
C'est tout l'intérêt de la chose 😉

EDITION
[X] Alors là, je suis scotché
j'ai copié telle quelle la macro obtenue avec l'enregistreur de macros quand je manipulais PQ manuellement, dans un nouveau classeur.
Et comme disait Rick: "Cà roule pour moi !"
L'import est immédiat ! 😉
(testé avec 10 CSV de 100 lignes chacun)
 
Dernière édition:
Oui, j'ai longuement testé PQ et j'ai rencontré pas mal de blocages.

Avec VBA (QueryTables.Add), je peux filtrer mes fichiers d'entrée (suivant l'extension, le nombre de lignes,...)
Je peux relancer les requêtes automatiquement, nettoyer ma feuille excel, etc ,...

Je préfère donc continuer en VBA.
 


Je fais le test avec 300 fichiers de 5 lignes chacun et l'import n'est pas immédiat (quelques secondes...)
Il est immédiat pour toi ?
 
Re

@David73
Je viens de faire le test sur 467 fichiers de 5 lignes
(PQ lancé => avec VBA parce qu'on est dimanche 😉)
En mon pays, quelques secondes, j'appelle cela immédiat 😉

Cela me donne même pas le temps de laisser mon café refroidir 😉
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
  • Question Question
2
Réponses
28
Affichages
2 K
Deleted member 441486
D
Réponses
40
Affichages
2 K
Réponses
2
Affichages
607
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…