Suppression de caractère dans un fichier texte
Résolu/Fermé
A voir également:
- Suppression de caractère dans un fichier texte
- Fichier rar - Guide
- Forcer la suppression d'un fichier - Guide
- Caractère ascii - Guide
- Fichier host - Guide
- Fichier iso - Guide
2 réponses
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 394
13 mars 2014 à 08:22
13 mars 2014 à 08:22
Bonjour
en premier approche, une solution simple, mais qui ne fonctionne que si le N° avant le F ne contient pas la valeur 20
=SUBSTITUE(A1;20;"";1)
sinon essayez celle ci à condition que le code commence toujours par VTE;
=GAUCHE(A2;4)&SUBSTITUE(DROITE(A2;NBCAR(A2)-TROUVE(";";A2;1));20;"";1)
crdlmnt
en premier approche, une solution simple, mais qui ne fonctionne que si le N° avant le F ne contient pas la valeur 20
=SUBSTITUE(A1;20;"";1)
sinon essayez celle ci à condition que le code commence toujours par VTE;
=GAUCHE(A2;4)&SUBSTITUE(DROITE(A2;NBCAR(A2)-TROUVE(";";A2;1));20;"";1)
crdlmnt
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 211
Modifié par eriiic le 13/03/2014 à 16:08
Modifié par eriiic le 13/03/2014 à 16:08
Bonjour à tous,
tu as quoi contre excel ?
Tu peux même choisir plusieurs fichiers à traiter en les sélectionnant avec les touches Shift et/ou Ctrl dans la boite de dialogue :
https://www.cjoint.com/?DCnqgdh2Xpi
Je remplace: ";F;120" par: ";F;1" comme apparemment on retrouve toujours cette chaine.
Comme tu ne parlais pas de renommer, j'écrase le fichier original. Travaille sur des copies.
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
tu as quoi contre excel ?
Tu peux même choisir plusieurs fichiers à traiter en les sélectionnant avec les touches Shift et/ou Ctrl dans la boite de dialogue :
https://www.cjoint.com/?DCnqgdh2Xpi
Je remplace: ";F;120" par: ";F;1" comme apparemment on retrouve toujours cette chaine.
Comme tu ne parlais pas de renommer, j'écrase le fichier original. Travaille sur des copies.
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
De plus si possible,
1/ j'aimerais bien avoir pour quand la valeur du deuxième champs = (GVEZ0000; GVEZOS00; GVEZOS01; GVEZOSE0) que le premier champs prenne la valeur VT2 au lieu de VTE.
2/ Et par la suite quand le premier = VT2 tous les quatrième champs qui y son égal prenne aussi la valeur de VT2. exemple ci dessous pour expliquer ma demande :
.
fichier d'origine :
VTE;70672000;F;1201401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VTE;44571100;F;1201401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VTE;70715500;F;1201401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VTE;44571200;F;1201401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VTE;GVEZ0000;F;1201401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;1201401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;1201401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;1201401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;1201401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;1201401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;1201401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VTE;70715500;F;1201401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VTE;44571200;F;1201401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VTE;70672000;F;1201401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VTE;44571100;F;1201401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VTE;GVEZ0000;F;1201401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
.
1/
Fichier en cours :
VTE;70672000;F;11401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VTE;44571100;F;11401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VTE;70715500;F;11401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VTE;44571200;F;11401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VT2;GVEZ0000;F;11401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;11401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;11401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;11401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;11401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;11401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;11401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VTE;70715500;F;11401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VTE;44571200;F;11401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VTE;70672000;F;11401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VTE;44571100;F;11401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VT2;GVEZ0000;F;11401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
.
2/
Fichier final :
VT2;70672000;F;11401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VT2;44571100;F;11401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VT2;70715500;F;11401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VT2;44571200;F;11401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VT2;GVEZ0000;F;11401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;11401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;11401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;11401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;11401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;11401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;11401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VT2;70715500;F;11401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VT2;44571200;F;11401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VT2;70672000;F;11401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VT2;44571100;F;11401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VT2;GVEZ0000;F;11401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
en espérant être assez précis,
Cordialement
1/ j'aimerais bien avoir pour quand la valeur du deuxième champs = (GVEZ0000; GVEZOS00; GVEZOS01; GVEZOSE0) que le premier champs prenne la valeur VT2 au lieu de VTE.
2/ Et par la suite quand le premier = VT2 tous les quatrième champs qui y son égal prenne aussi la valeur de VT2. exemple ci dessous pour expliquer ma demande :
.
fichier d'origine :
VTE;70672000;F;1201401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VTE;44571100;F;1201401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VTE;70715500;F;1201401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VTE;44571200;F;1201401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VTE;GVEZ0000;F;1201401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;1201401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;1201401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;1201401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;1201401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;1201401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;1201401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VTE;70715500;F;1201401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VTE;44571200;F;1201401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VTE;70672000;F;1201401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VTE;44571100;F;1201401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VTE;GVEZ0000;F;1201401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
.
1/
Fichier en cours :
VTE;70672000;F;11401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VTE;44571100;F;11401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VTE;70715500;F;11401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VTE;44571200;F;11401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VT2;GVEZ0000;F;11401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;11401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;11401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;11401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;11401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;11401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;11401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VTE;70715500;F;11401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VTE;44571200;F;11401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VTE;70672000;F;11401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VTE;44571100;F;11401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VT2;GVEZ0000;F;11401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
.
2/
Fichier final :
VT2;70672000;F;11401001;;10/01/2014;15/03/2014;0;251.43;;;;;;;;1G000
VT2;44571100;F;11401001;;10/01/2014;15/03/2014;0;50.29;;;;;;;;
VT2;70715500;F;11401001;;10/01/2014;15/03/2014;0;469.55;;;;;;;;1G000
VT2;44571200;F;11401001;;10/01/2014;15/03/2014;0;93.91;;;;;;;;
VT2;GVEZ0000;F;11401001;;10/01/2014;15/03/2014;865.18;0;;;;;;;;
VTE;70715500;F;11401003;NOREA;27/01/2014;27/01/2014;293.31;0;;;;;;;;1G000
VTE;44571200;F;11401003;NOREA;27/01/2014;27/01/2014;8.66;0;;;;;;;;
VTE;70672000;F;11401003;NOREA;27/01/2014;27/01/2014;0;510.00;;;;;;;;1G000
VTE;44571100;F;11401003;NOREA;27/01/2014;27/01/2014;0;102.00;;;;;;;;
VTE;707155;F;11401003;NOREA;27/01/2014;27/01/2014;0;250.00;;;;;;;;1G000
VTE;GDIVE000;F;11401003;NOREA;27/01/2014;27/01/2014;560.03;0;;;;;;;;
VT2;70715500;F;11401002;;27/01/2014;15/03/2014;0;445.60;;;;;;;;1G000
VT2;44571200;F;11401002;;27/01/2014;15/03/2014;0;89.12;;;;;;;;
VT2;70672000;F;11401002;;27/01/2014;15/03/2014;0;267.75;;;;;;;;1G000
VT2;44571100;F;11401002;;27/01/2014;15/03/2014;0;53.55;;;;;;;;
VT2;GVEZ0000;F;11401002;;27/01/2014;15/03/2014;856.02;0;;;;;;;;
en espérant être assez précis,
Cordialement
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 211
13 mars 2014 à 17:42
13 mars 2014 à 17:42
1)
- 1a) pour simplifier peut-on élargir à tous les GVEZxxxx, ou y-a-t'il des GVEZxxxx non concernés et il faut se restreindre à cette liste de 4 GVEZxxxx ?
- 1b) on est bien d'accord que le "O" et "0" derrière le Z ne sont pas des erreurs de frappe ?
2) J'ai eu un peu de mal à comprendre, je pense y être arrivé....
Plus complexe car oblige à charger tout le fichier en mémoire pour travailler sur les lignes précédentes. Ca sera sans doute demain.
- 2a) les lignes à modifier en VT2 sont toutes groupées ou il faut rechercher l'équivalence du champ 4 sur tout le fichier ?
- 2b) dans ton exemple elles précèdent toutes le VT2. S'il y en a après faut-il les modifier aussi ?
eric
- 1a) pour simplifier peut-on élargir à tous les GVEZxxxx, ou y-a-t'il des GVEZxxxx non concernés et il faut se restreindre à cette liste de 4 GVEZxxxx ?
- 1b) on est bien d'accord que le "O" et "0" derrière le Z ne sont pas des erreurs de frappe ?
2) J'ai eu un peu de mal à comprendre, je pense y être arrivé....
Plus complexe car oblige à charger tout le fichier en mémoire pour travailler sur les lignes précédentes. Ca sera sans doute demain.
- 2a) les lignes à modifier en VT2 sont toutes groupées ou il faut rechercher l'équivalence du champ 4 sur tout le fichier ?
- 2b) dans ton exemple elles précèdent toutes le VT2. S'il y en a après faut-il les modifier aussi ?
eric
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 211
Modifié par eriiic le 13/03/2014 à 18:44
Modifié par eriiic le 13/03/2014 à 18:44
- 2c) peut-il y avoir des VT2 dans le fichier original sur lesquels il faut appliquer la règle 2 ?
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
28 décembre 2023
7 211
13 mars 2014 à 20:05
13 mars 2014 à 20:05
Modifié par kent le 13/03/2014 à 08:27
13 mars 2014 à 13:37
désolé
Bonne chance
crdlmnt