Bonjour,
Je souhaite faire une extraction de certaine colonne d'un fichier csv, pour les positionner dans un nouveau fichier.
Par contre suivant les lignes le contenu recherché ne ce situe pas dans les même colonnes.
J'utilise le script for pour récupérer chaque colonne de chaque ligne du fichier présent dans ma variable !filename! :
for /F "skip=2 tokens=2,8,10,11,13,20,24 delims=;" %%a in (!filename!) do (
Sauf que pour certaines lignes si je veux avoir le bon contenu dans mes variables, je suis obligée de saisir ceci :
for /F "skip=2 tokens=2,8,10,11,12,16,19 delims=;" %%a in (!filename!) do (
J'ai pu constaté que ce décalage de colonnes correspondaient au fait que certaines colonnes sont vides ( deux points-virgules collés : ";;").
exemple si je souhaite prendre la 2ème et 8éme colonne, je n'aurais pas le même contenu suivant ces 2 lignes:
- contenu1;contenu2;contenu3;contenu4;contenu5;contenu6;contenu7;contenu8;contenu9;contenu10;contenu11;
- contenu1;contenu2;;contenu4;;;contenu7;contenu8;contenu9;contenu10;contenu11;
J'aurais pour résultat :
- 2=contenu2 et 8=contenu8
- 2=contenu2 et 8=contenu11
Cela est problématique car je ne sais jamais à l'avance qu'elle colonne sera vide !
Comment puis-je y remédier pour que les références de colonnes soient toujours identique, malgré que certains des champs soient vides ?
Merci pour votre aide
Partager