Bonjour,
Je cherche à faire un tri dans un fichier texte afin de le charger dans une base de données d'un logiciel prévu pour lire un certain format (respect des espaces).
Le fichier de base que j'ai à traiter tous les 7-10 jours est composé de plusieurs milliers de lignes ... à la main c'est plutôt fastidieux et carrément pas intéressant à faire.
J'ai besoin de le décomposer en plusieurs fichiers texte, un par nationalité ( noté NAT1-NAT2-NAT3 dans l'exemple ci dessous).
Mon problème est que la ligne qui contient la nationalité doit être impérativement extraite avec les deux qui la suive.
Je ne sais pas du tout par ou commencer.
Je me dis que Excel peut m'être d'une grande aide pour ça mais je n'ai pas assez de connaissances pour m'en sortir seul
Le fichier de base est construit comme suit :
La 1ere ligne est composée d'un nom suivi de la nationalité associée (trigramme ou quadrigramme)
deux lignes contenant les informations importantes codées en groupe de chiffres et lettres suivant le format de l'exemple ci-dessous.
La 2eme ligne commence toujours par un "1" et la 3eme toujours par un "2" (si ça peut être utile pour faire le tri).
Je n'ai pas toujours besoin d'extraire toutes les nationalités (par ex, sur le fichier ci- dessous extraction de la NAT1 et NAT 3 seulement.
Je peux faire l'extraction en plusieurs fois en changeant la variable à la main.
Mon problème est que lors de l'import de mon fichier texte vers Excel j'ai le même format que ci-dessous (tout en colonne A et chaque ligne dans une case différente).
Il me faudrait pouvoir mettre automatiquement la ligne 1 dans la case A1, la 2eme dans la case B1, la 3eme dans la C1 puis la 4 dans la A2, la 5eme dans B2, la 6eme dans C2 pour faire le tri via le filtre Excel. avant de tout remettre dans le format précédent ou de pouvoir faire une macro qui cherche la variable de nationalité voulue (NAT1-NAT2-NAT3...) et qui colle la ligne trouvée + les 2 suivantes dans un autre onglet avant d'exporter en format texte par exemple.
Le but final étant de pouvoir faire un export et de se retrouver avec un fichier texte par nationalité contenant tous les groupes de 3 lignes qui correspondent a la bonne nationalité.
Petit exemple pour mieux comprendre :
Mon fichier en vrac à trier (raccourci pour l'exemple):
PREMIER NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
DEUXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
TROISIEME NOM NAT3
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
QUATRIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
CINQUIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
SIXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Je cherche donc à obtenir 3 fichiers différents :
Extraction fichier NAT1:
PREMIER NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
QUATRIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
CINQUIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Extraction fichier NAT2:
DEUXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
SIXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Extraction fichier NAT3:
TROISIEME NOM NAT3
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Si vous avez une piste ou une solution à me proposer j'en serai ravi.
Merci de m'avoir lu,
En attendant vos réponses,
Keido
Je cherche à faire un tri dans un fichier texte afin de le charger dans une base de données d'un logiciel prévu pour lire un certain format (respect des espaces).
Le fichier de base que j'ai à traiter tous les 7-10 jours est composé de plusieurs milliers de lignes ... à la main c'est plutôt fastidieux et carrément pas intéressant à faire.
J'ai besoin de le décomposer en plusieurs fichiers texte, un par nationalité ( noté NAT1-NAT2-NAT3 dans l'exemple ci dessous).
Mon problème est que la ligne qui contient la nationalité doit être impérativement extraite avec les deux qui la suive.
Je ne sais pas du tout par ou commencer.
Je me dis que Excel peut m'être d'une grande aide pour ça mais je n'ai pas assez de connaissances pour m'en sortir seul
Le fichier de base est construit comme suit :
La 1ere ligne est composée d'un nom suivi de la nationalité associée (trigramme ou quadrigramme)
deux lignes contenant les informations importantes codées en groupe de chiffres et lettres suivant le format de l'exemple ci-dessous.
La 2eme ligne commence toujours par un "1" et la 3eme toujours par un "2" (si ça peut être utile pour faire le tri).
Je n'ai pas toujours besoin d'extraire toutes les nationalités (par ex, sur le fichier ci- dessous extraction de la NAT1 et NAT 3 seulement.
Je peux faire l'extraction en plusieurs fois en changeant la variable à la main.
Mon problème est que lors de l'import de mon fichier texte vers Excel j'ai le même format que ci-dessous (tout en colonne A et chaque ligne dans une case différente).
Il me faudrait pouvoir mettre automatiquement la ligne 1 dans la case A1, la 2eme dans la case B1, la 3eme dans la C1 puis la 4 dans la A2, la 5eme dans B2, la 6eme dans C2 pour faire le tri via le filtre Excel. avant de tout remettre dans le format précédent ou de pouvoir faire une macro qui cherche la variable de nationalité voulue (NAT1-NAT2-NAT3...) et qui colle la ligne trouvée + les 2 suivantes dans un autre onglet avant d'exporter en format texte par exemple.
Le but final étant de pouvoir faire un export et de se retrouver avec un fichier texte par nationalité contenant tous les groupes de 3 lignes qui correspondent a la bonne nationalité.
Petit exemple pour mieux comprendre :
Mon fichier en vrac à trier (raccourci pour l'exemple):
PREMIER NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
DEUXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
TROISIEME NOM NAT3
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
QUATRIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
CINQUIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
SIXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Je cherche donc à obtenir 3 fichiers différents :
Extraction fichier NAT1:
PREMIER NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
QUATRIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
CINQUIEME NOM NAT1
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Extraction fichier NAT2:
DEUXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
SIXIEME NOM NAT2
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Extraction fichier NAT3:
TROISIEME NOM NAT3
1 12345L 12345L 12345.12345678 .12345678 12345-6 -12345-6 1 1234
2 12345 12.1234 123.1234 1234567 123.1234 123.1234 12.12345678912345
Si vous avez une piste ou une solution à me proposer j'en serai ravi.
Merci de m'avoir lu,
En attendant vos réponses,
Keido