[EXCEL & VBA]

Résolu/Fermé
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 - 6 juil. 2010 à 14:41
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 - 12 juil. 2010 à 15:20
Bonjour,

je cherche à créer une macro qui me permettra d'importer le contenu de fichiers .csv (ou .xls si c'est pas possible pour .csv) dans un fichier excel.

Plus de precision:
-J'ai disons une quarantaine de fichier CSV avec mes données;
-je souhaite que ma macro aille cherche les données du premier fichier les copie dans une nouvelle feuille de mon classeur puis passe au fichier suivant dans une nouvelle feuille, etc...

Merci d'avance!
Si c'est pas clair n'hésitez pas a posez des questions
A voir également:

6 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
6 juil. 2010 à 14:47
Salut,
Je te recommande vivement cette astuce, ma foi fort bien trouvée...
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
6 juil. 2010 à 15:48
Merci pour l'astuce ca m'aide beaucoup.
Cela dit il y a un petit probleme, la separtion du csv ne se fait pas correctement.
Il fait des separtions à chaque virgule aussi alors que j'ai réglé sur "point virgule".
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
6 juil. 2010 à 16:01
En plus, cela me crée des fichiers suplementaires alors qu'il me faut les données dans le meme classeur.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
6 juil. 2010 à 16:37
1- dans le code donné dans l'astuce il y a cette phrase :
'Changer la , (virgule) par le séparateur de votre fichier
il faut donc le faire...
2- oui et à toi après de déplacer tes feuilles dans le même classeur (clic droit sur la feuille/déplacer ou copier choisir le même classeur de destination...
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
7 juil. 2010 à 09:26
J'ai bien changé la virgule par un point virgule mais il continue a faire des séparations sur les virgules...

Je note pour les feuilles, je savais pas que l'on pouvais faire ca (gros noob d'excel inside).
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
7 juil. 2010 à 10:34
Salut,
Peux tu me copier/coller ici le code tel que tu l'as transformé?
C'est cette ligne qu'il faut changer :
TB = Split(.Cells(Lig, 1), ",")

par :
TB = Split(.Cells(Lig, 1), ";")
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
7 juil. 2010 à 16:13
Bonjour à tout les deux,
Désolé pour le retard, je n'ai vu ton message qu'à l'instant.
En lisant le topic je ne vois pas d'exposé sur un quelquonque problème.
Quel est-il ?
A+
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
7 juil. 2010 à 16:24
Salut lermite,

Il faut développer les commentaires : https://forums.commentcamarche.net/forum/affich-18395732-excel-vba#2
eric
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
7 juil. 2010 à 16:35
Bonjour Eric,
Grrrr... Je m'habitue pas à ces postes cachés.
Merçi.
A+
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
8 juil. 2010 à 08:28
Salut vous deux,
Merci de vous pencher sur ce "cas".
Cordialement,
A+
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
7 juil. 2010 à 16:26
Bonjour lermite,

Mon probleme est le suivant:
je cherche à importer automatiquement des données se trouvant sur une grand quantité de fichier .csv dans le meme classeur EXCEL.
Pijaku m'a dirigé vers une astuce, dont tu sembles etre l'auteur, qui permet la conversion de fichier csv en xls.

Le probleme: la macro fait la sépartion sur les virgules malgré la modification dans le code pour qu'elle se fasse sur des points-virgules.
Voila :]
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 7/07/2010 à 16:41
J'ai déjà rencontré certains problème quand par exemple le séparateur est le ";" mais que dans le fichier il y a des ","
Tu pourrais me passer un de tes fichiers, sur CiJoint.Com, le lien sur un poste suivant ou en MP si confidentiel ?

L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
8 juil. 2010 à 14:42
Y a une erreur dans le code ..
En fait, ta dernière donnée n'est pas prise en compte ??? c! c'est bien ça, (mais de toutes façons faut changer)

        For i = 0 To UBound(TB) - 1
            .Cells(Lig, i + 1) = TB(i)
        Next i

PAR...
        For i = 0 To UBound(TB) 
            .Cells(Lig, i + 1) = TB(i)
        Next i

Faut enlever le -1,.
Comprend pas, ce code à déjà été charger des centaines de fois et j'ai jamais eu de retour!!
Si tu a encore un problème c'est le fichier Csv "réel" que je dois avoir car ce que tu m'a communiquer c'est déjà sur Excel.
A+
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
9 juil. 2010 à 09:37
Moi non plus je comprends pas quand j'importe les données de manières manuelles sur Excel via la fonction Excel "données externes" cela fonction sans probleme...

Sinon ce que je t'ai communiqué était un copier-coller d'un fichier .csv obtenu à la base par un tableau Excel, mais ca n'etait pas un fichier excel.

Je me suis résolu à copier manuellement les données.
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 9/07/2010 à 13:10
J'ai créer un fichier Csv à partir des données que tu m'a communiqué.
J'ai tester la macro et à part le "-1" tout fonctionnait normalement.
J'ai penser dans un premier temps que les guillemets placer à l'intérieur de la ligne pouvait influencer mais pas du tout
Enfin bon, si tu change d'obption...
A+
L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
0
Kinslown Messages postés 25 Date d'inscription lundi 14 décembre 2009 Statut Membre Dernière intervention 12 juillet 2010 2
12 juil. 2010 à 15:20
Merci pour l'aide.
0