Import personalisé d'un fichier texte dans colonnes

Bonjour,

Je souhaiterais importer un fichier texte dans Excel, que toute une section tienne sur une ligne. (voir plus bas)

Donc que la 1ere ligne de la section soit en colonne A, la 2eme ligne en colonne B, ect.. et que à chaque nouvelle section ça change de ligne.

Chaque ligne de la section commence par un espace(donc à partir de la 2eme ligne de la section), par exemple pour la section « voice user-profile 11 »(il n'y a pas d'espace devant cette ligne), il y a un espace devant les lignes suivantes mais des fois je voudrais des champs d'une meme ligne dans une colonne différente :

pin 123

user toto password 12345

number 1111 type normal

Dans l'exemple de cette section, je voudrais que ça me mette toutes ces sections dans une feuille appelée "user-profile" par exemple, et que chaque champs en gras soit le nom de chaque colonne.

Exemple : pour la section "voice user-profile"

=> Nom de la feuille : user-profile

=> colonne A ligne 1 : voice user-profile => ligne 2 : 11

=> colonne B ligne 1 : pin => Ligne2 : 123

=> colonne C ligne 1 : user => Ligne2 : toto

=> colonne D ligne 1 : password => Ligne2 : 12345

=> colonne E ligne 1 : number => Ligne2 : 1111

=> colonne F ligne 1 : type => Ligne2 : normal

J’ai parcouru les forums et fait des tests de macros mais je n’ai pas réussi à faire ce que je voulais.

Voici plusieurs types de sections :

voice user-profile 11

pin 123

user toto password 12345

number 1111 type normal

ephone-dn 11 dual-line

number 0000 no-reg primary

label toto

description toto

name toto

call-forward busy 1111

call-forward noan 1111 timeout 25

ephone-dn-template 2

ephone 11

mac-address xxxx.xxxx.xxxx

ephone-template 1

type 7906

logout-profile 11

voice logout-profile 11

number 0000 type normal

speed-dial 1 0 label "…."

Bonjour

Merci de joindre un onglet excel avec ces différents exemples, tels qu'ils apparaissent sur la feuille

Cordialement

FINDRH

Bonjour,

Vous trouverez en pièce jointe le fichier cible.

Le format dont je souhaiterais avoir au final.

je vous remercie par avance pour le temps que vous me consacrez

23macro-cible.xlsx (11.11 Ko)

RE Bonjour

et une partie de la source ?

FINDRH

Bonjour,

Le fichier texte source est spécifié dans mon premier post, à savoir :

voice user-profile 11

pin 123

user toto password 12345

number 1111 type normal

ephone-dn 11 dual-line

number 0000 no-reg primary

label toto

description toto

name toto

call-forward busy 1111

call-forward noan 1111 timeout 25

ephone-dn-template 2

ephone 11

mac-address xxxx.xxxx.xxxx

ephone-template 1

type 7906

logout-profile 11

voice logout-profile 11

number 0000 type normal

speed-dial 1 0 label "…."

Bonjour

Tous tes modèles différents sont donc compris dans ta source.

J'ai avancé jusqu'à la répartition de ces txt en colonnes, plus qu'a les déverser sur les bons onglets

termine ce soir ou demain matin

Cordialement

FINDRH

Bonsoir

ci joint une proposition a tester

Elle ne tient compte que des modèles proposés

A ta disposition

Cordialement

FINDRH

17macro-cible.xlsm (48.05 Ko)

Bonsoir,

Je te remercie pour ton travail remarquable, c'est vraiment sympa de ta part.

Il me reste maintenant à tester dans le cas réel et essayer de comprendre car à vue d’œil je ne comprend pas grand choses aux traitements que tu as fait

Je vois que tu as créé 7 macros, mais serait il possible que tu me donnes une brève description de ce que font ces macros ?

J'ai juste remarqué un petit problème, qui se situe dans la feuille 'lougout-profile' en fait il manque le numéro du logout profile, je m'en explique, dans le cas suivant :

voice logout-profile 11

number 0000 type normal

speed-dial 1 0 label "…."

dans la feuille logout-profile j'ai en :

colonne A : 0000

colonne B : normal

or il manque une colonne tout à gauche qui devrait être le numéro du logout profile à savoir 11. (Pourtant dans ton onglet 'formule par ligne' c'est ok et dans la feuille 'Formules' il y a bien toutes les colonnes)

J'aimerais essayer de trouver par moi même car j'aimerais bien comprendre

D’après ce que j'ai compris tu interprètes ce qu'il y a dans la feuille 'base' dans la feuille 'Trav' puis de la feuille Trav tu retravailles ces résultats dans les différentes feuilles?! Est-ce correct ?

Encore un grand merci à toi.

Bonsoir

Si tu regardes l'onglet Formules par ligne tu verras en regard de la première ligne de chaque modèle les formules utilisées

1) je repère le modèle avec les lettres 1 à 4 données par la table de référence de Tables

2) je crée les formules adéquates puis les recopie sur l'onglet formules ( que j'ai corrigé pour logout profile) qui me sert de référence pour les calculs ultérieurs :

- si la cellule de A1 est vide ou n'appartient pas à ma table de correspondance je ne fais rien

- sinon je copie la ligne de formules créée en fonction du modèle( 1,2,3,4)

3) je fige les résultats avec copier coller valeur, je trie la ligne avec les formules et extrais sur tes onglets

4) il n'y a qu'une macro : Recap, j'ai supprimé les autres car elles sont le fruit d'un enregistrement intermédiaire....

5) La macro reprend toutes les opérations manuelles, avec des boucles de traitement , la première pour poser els bonnes formules selon les modèles, la deuxième pour extraire les lignes vers les onglets

ça marche a priori mais vérifie bien que les zones de texte qui seraient plus longues que Toto sortent bien

A ta dispo

Cordialement

FINDRH

12macro-ciblev02.xlsm (39.36 Ko)

Bonjour,

Merci pour ces informations, il faut que j'y réfléchisse et que j'essaie de rajouter une nouvelle formule pour voir

Sinon je viens de tester un gros import, mais hélas je rencontre des problèmes, car en fait dans certaines sections, certaines lignes n'existent pas.

Exemple pour les logout profile :

voice logout-profile 110
 speed-dial 1 0 label "Plse logon with your IGG profile" 

Si la ligne number n'existe pas alors cela ne me rempli pas la ligne dans la feuille 'lougout-porfile'

De plus pour toutes les lignes au niveau du 'label' dans la colonne E, je ne vois que "Plse logon with you au lieu de "Plse logon with your IGG profile"

Test de l'import des users-profile = OK

Test de l'import de la feuille ephone et ephone-dn = KO, ça ne m'a rien importé.

Je te joins à nouveau le fichier Excel avec de nouvelles valeurs d'import dans la feuille 'base', en fait certaines lignes n'apparaissent pas tout le temps ce qui du fait, met en erreur l'import.

Bien cordialement

Merci

19macro-ciblev02.xlsm (78.95 Ko)

Bonjour

Effectivement ce ne sont pas 4 mais bien plus de modèles qu'il faut repérer et faire les formules en conséquence.....

J'ai aussi remarqué qu'il y a des doublons dans ta base de test, est ce normal ou consécutif à la constitution de cette base ?

Je regarde cela calmement ce soir......

Cordialement

FINDRH

Bonjour,

En effet il est normal qu'il y ai des doublons, car je ne peux pas mettre les vraies données, mais normalement dans un cas réel il n'y a pas de doublons.

Il faut créer une formule en fonction du nombre de ligne de chaque section?

Bien cordialement.

Bonsoir

effectivement il faut créer autant de formules que de variantes

ce ne sont que des dérivées d'une formule de base, le pb étant de bien repérer le nb de lignes.....

Idem pour la longueur des caractères a extraire, il faut prévoir le max....

J'ai bien avancé pour la première partie .... je n'ai plus qu'à adapter les formules a chaque cas.

Autre question ; les différents Ephone-Dn doivent ils être récapitulés sur le même onglet avec les infos dans les bonnes colonnes ?

Cordialement

FINDRH

Bonjour,

Ok donc pour chaque section il faut compter le nombre de ligne avant la prochaine ligne vide pour lui exécuter telle ou telle formule, est-ce correct?

Concernant la chaine de caractères, en règle général ça ne dépassera pas 50 caractères au max (et encore je suis largue).

En effet l'idéal serait d'avoir tous les ephone-dn dans la même feuille car j'enregistre ensuite la feuille en .csv pour l'importer dans un autre logiciel derrière.

Bien cordialement.

Bonjour

Ci joint une proposition qui fonctionne a piori.....

Les moutons à 5 pattes sont repérés par #valeur dans TRAV après traitement.... j'en ai 2, sur 2 lignes avec des intitulés win, que je ne vois pas comment traiter

Les formules absentes sont repérés dans la feuille erreur..... lignes avec 999 dans colonne 2 de trav

A tester

Cordialement

FINDRH

10macro-ciblev05.xlsm (74.83 Ko)
Rechercher des sujets similaires à "import personalise fichier texte colonnes"