Import .csv dans .xls (1 .csv par feuille)

Résolu
Bonjour,
je débute en VBA (depuis 3h) et, of course, je rame ;)

Question (déjà posé côté Forum VB)
Je recherche un exemple de macro(s) VBA Excel (2003, dans mon cas) capable d'importer tous les fichiers .csv d'1 répertoire donné dans 1 fichier .xls unique, à raison d'1 fichier .csv par feuille dans le fichier .xls ;
les fichiers .csv ne comportent que des chaines de caractères (séparées par 1 ',' ou 1 ';' au choix)
chaque feuille devra porter le nom du fichier .csv importé correspondant (sans l'extension .csv, bien sûr)
et, si possible, le fichier .xls doit être distinct du fichier .xls où se trouve la macro, et il sera créer ou recréer à chaque lancement de la macro;

Bon, bien sûr, j'ai vu pas mal d'exemples dans ce domaine sur les forums, mais comme ce n'est jamais tout à fait mon cas, ça demande des adaptations ce qui, vu mon niveau, reste assez laborieux, pour le moment ;

D'avance, merci pour votre aide charitable

11 réponses

  1. Bonjour,
    bon, j'ai réglé mes 2 pbs ci-dessus en codant ceci :
    onglet = Mid(fic, 4)
    ActiveSheet.Name = Left(onglet, InStrRev(onglet, ".") - 1)

    J'ai fait en sorte que le préfixe de mes csv aille de 01- à 10- pour pouvoir retirer les 3 premiers caractères à tous coups;
    du coup, le nom des onglets ne dépasse plus les 31 car. de long;
    donc, ça marche

    merci encore