Convertir csv en xlsx + ajouter 1 ligne et 1 colonne

Fermé
Diane - 17 nov. 2015 à 01:20
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 - 12 mai 2016 à 15:13
Bonjour,
Je n'y connais rien en VBA...J'ai trouvé des bouts de code mais n'arrive pas à faire la macro complète, quelqu'un peut il m'aider ?

Dans un répertoire contenant de nombreux fichiers csv, je souhaite (en un seul clic si possible :-)):
- les convertir en xlsx (même répertoire ou différent peu importe)
- changer la présentation des données (actuellement 1 colonne avec 2 champs séparés par ";" à présenter en 2 colonnes)
- ajouter une colonne (en A:A) et une ligne (en 1:1)
- dans la nouvelle ligne, écrire "Rack" dans la case A1, "Position" dans la case A2 et "Vial" dans la case A3
- dans la nouvelle colonne, écrire le nom du fichier à chaque ligne (96 item)

En exemple:

Le fichier 0YY.csv contenant les données:
A1; 012345
A2; 123456
...
H12;567890

Deviendrait le fichier 0YY.xlsx:

Rack Position Vial
0YY A1 012345
0YY A2 123456
...
0YY H12 67890

Et tous les fichiers seraient sur le même modèle.

Merci d'avance de votre aide !

A voir également:

4 réponses

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
17 nov. 2015 à 09:00
Bonjour,

Je vous fais un exemple

A+
1
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
17 nov. 2015 à 09:50
Re,

fichier exemple, clic bouton Traitement_csv, choix du repertoire et ca roule

https://www.cjoint.com/c/EKriYEq4nOf
1
Salut, merci beaucoup pour ce fichier ! C'est magique :-)
Il y a juste un petit truc qui ne fonctionne pas c'est la séparation en 2 colonnes du texte séparé par un ";"
J'ai essayé d'ajouter ce bout de macro mais je ne sais pas où l'ajouter dans ta macro ni exactement ce qu'il doit contenir.
Merci pour ton aide !
0
Fausse alerte, finalement, j'ai réussi ! Tout fonctionne, merci encore.
0
fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016 > Diane
11 mai 2016 à 09:45
Bonjour Diane, f894009,
Merci pour le fichier f894009, j'ai également utilisé le fichier pour ajouter une colonne avec le nom de fichier et cela marche parfaitement ;)

Cependant je n'arrive pas à séparer ma chaîne de caractère contenant les ";".
La conversion me donne 2 colonnes (et non 3) (1 ere avec mon nom de fichier et une seconde avec ma chaîne de caractère avec les ";" . La 3eme colonne reste désespérément vide :( )

Merci d'avance pour l'aide que vous pourrez me donner sur ce sujet :)
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
Modifié par f894009 le 11/05/2016 à 13:06
Bonjour,

Mettez un exemple de chaine de caracteres pour voir son format
0
fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
11 mai 2016 à 13:57
Bonjour,
Merci pour votre retour rapide.
Ci-dessous le csv.
https://www.cjoint.com/c/FEllYwmcagH

Concernant mon projet global, je souhaite intégrer une colonne avec le nom du fichier mais également une colonne avec le nom de mon ensemble...
Je ne sais pas si cela est possible, je suis sur le sujet....

Pour illustrer le projet, ci-dessous le fichier excel final vers lequel j'aimerais aboutir en partant du fichier csv:
https://www.cjoint.com/c/FEll0FpPbTH

Merci d'avance pour votre aide.
0
Bonjour
une macro import CSV
http://www.cjoint.com/c/FEln3TCrsiA

A+
Maurice
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
11 mai 2016 à 16:09
Bonjour,

C'est Ok si tous les fichiers ont les memes noms d'ensemble et que 3 pour le cas present
0
fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
12 mai 2016 à 13:42
Bonjour Maurice et merci pour votre contribution.
En effet, comme le dit f894009, j'ai des noms d'ensemble qui peuvent varier ainsi que la quantité...
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
12 mai 2016 à 13:59
Bonjour,

Pour tester le changement d'ensemble, est-ce que le code est toujours C et/ou le N°Plan Cxxxxxxx ????
0
fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
12 mai 2016 à 14:05
Le code peut être E ou C et le N° de plan Exxxxxx ou bien Cxxxxxx.... par contre le niveau sera toujours un chiffre ou un nombre (1, 2, 3 .... 11, 12 ....) et non un niveau avec un chaine de caractères par exemple (1.1 , 1.12 , 3.1 , 3.13 )
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > fr-456 Messages postés 6 Date d'inscription mercredi 11 mai 2016 Statut Membre Dernière intervention 12 mai 2016
12 mai 2016 à 14:11
Re,

Ok
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
12 mai 2016 à 15:13
Re,

une facon de faire: https://www.cjoint.com/c/FEmnmCYKfjf

Enregistrement xlsx dans le meme repertoire selectionne au depart, a vous de voir
0