Une macro ?....

Le
Sniper
Amis du jour, bonjour.
C'est surement tout bête, mais je cale sur un listing à modifier.
Soit un fichier TXT contenant une liste de noms de 12000 lignes
environ.
Je souhaite ajouter à chaque nom un texte (toujours le même XXX) en
début de ligne. Et un autre texte (toujours le même YYY) en fin de
ligne.
Tout en conservant bien sûr la structure et les sauts de lignes.
J'ai bien tenté le coup sous Notepad++ mais il ne gère pas les sauts de
ligne.
J'ai tenté le coup sous Excel, mais ma faible connaissance en matière
de formules. bref, si un bon samaritain pouvait me donner une
formule Excel pour automatiser ça, ça me dépannerait bien ;-)
Merci d'avance.

--
Sniper

Si t'es perdu dans la forêt et que tu restes immobile pendant deux ans,
il va pousser de la mousse sur un côté de tes jambes. C'est le Nord.
JC Vandamme
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jackr13
Le #19079231
Bonjour,
Sniper wrote:
Amis du jour, bonjour.
C'est surement tout bête, mais je cale sur un listing à modifier....
Soit un fichier TXT contenant une liste de noms de 12000 lignes
environ.
Je souhaite ajouter à chaque nom un texte (toujours le même XXX) en
début de ligne. Et un autre texte (toujours le même YYY) en fin de
ligne.
Tout en conservant bien sûr la structure et les sauts de lignes....
J'ai bien tenté le coup sous Notepad++ mais il ne gère pas les sauts
de ligne.
J'ai tenté le coup sous Excel, mais ma faible connaissance en matière
de formules.... bref, si un bon samaritain pouvait me donner une
formule Excel pour automatiser ça, ça me dépannerait bien ;-)
Merci d'avance.



Tout simplement
si cellule A1 contient abcdef
ecrire en B1 = "xxx"&A1&"YYY" le résultat donne xxxabcdefYYY dans la
cellule B1
PUIs fair copier sur B1
et coller sur les 12000 lignes.

Nous dire...

Cordialement,
jackr13
Aski
Le #19079381
Salut Sniper,

Amis du jour, bonjour.
C'est surement tout bête, mais je cale sur un listing à modifier....
Soit un fichier TXT contenant une liste de noms de 12000 lignes environ.
Je souhaite ajouter à chaque nom un texte (toujours le même XXX) en début
de ligne. Et un autre texte (toujours le même YYY) en fin de ligne.
Tout en conservant bien sûr la structure et les sauts de lignes....
J'ai bien tenté le coup sous Notepad++ mais il ne gère pas les sauts de
ligne.
J'ai tenté le coup sous Excel, mais ma faible connaissance en matière de
formules.... bref, si un bon samaritain pouvait me donner une formule
Excel pour automatiser ça, ça me dépannerait bien ;-)



Une autre solution, utiliser un éditeur hexa et faire le remplacement de
"0D0A" et ajoute-y tes caractères convertis en hexa en début et fin de
chaîne.
--
Cordialement

Aski
MVP Windows Desktop Experience
http://dechily.org/
http://dechily.org/Forum_Aski/
mdnews
Le #19079771
On Wed, 08 Apr 2009 16:43:20 +0200, Sniper wrote:

Amis du jour, bonjour.
C'est surement tout bête, mais je cale sur un listing à modifier....
Soit un fichier TXT contenant une liste de noms de 12000 lignes
environ.
Je souhaite ajouter à chaque nom un texte (toujours le même XXX) en
début de ligne. Et un autre texte (toujours le même YYY) en fin de
ligne.
Tout en conservant bien sûr la structure et les sauts de lignes....
J'ai bien tenté le coup sous Notepad++ mais il ne gère pas les sauts de
ligne.
J'ai tenté le coup sous Excel, mais ma faible connaissance en matière
de formules.... bref, si un bon samaritain pouvait me donner une
formule Excel pour automatiser ça, ça me dépannerait bien ;-)
Merci d'avance.




Avec un editeur de texte sachant utiliser les expressions régulières

Exemple, avec EdipadPro

- Ouvre le fichier
- Tapes CTRL+F (pour rechercher)
- Coche à gauche "regular Expression"
- Dans la boite en bas
Search: (.+)
Replace: xxx$1yyy
- Clique sur ReplaceAll

(Note: EdipadPro est maintenant aussi disponible en Français)
Sniper
Le #19080581
Merci à tous pour les idées. J'ai testé la recherche sur les RegExp
dans Notepad++, mais ça ne fonctionne pas correctement.
J'ai donc utilisé l'idée de jackr13 dans mon vieux Excel.
En fait, il suffit de créer la formule ="xxx"&A1&"YYY" en B1, de
copier/coller dans les 12000 lignes suivantes et de sauver en CSV, puis
fermer le fichier dans Excel. On ne peut pas supprimer la colonne 1 de
suite, sinon la formule donne #REF. Rouvrir ce CSV et supprimer la
première colonne, et re-sauver en TXT.
Voili, voilà... c'est fait :-)
Encore merci et bonne soirée ;-)

--
Sniper

L'urgent est déjà fait, l'impossible est en cours,
pour les miracles on demande 24 heures de délai.
jackr13
Le #19080721
bonsoir,

Sniper wrote:
Merci à tous pour les idées. J'ai testé la recherche sur les RegExp
dans Notepad++, mais ça ne fonctionne pas correctement.
J'ai donc utilisé l'idée de jackr13 dans mon vieux Excel.
En fait, il suffit de créer la formule ="xxx"&A1&"YYY" en B1, de
copier/coller dans les 12000 lignes suivantes et de sauver en CSV,
puis fermer le fichier dans Excel. On ne peut pas supprimer la
colonne 1 de suite, sinon la formule donne #REF. Rouvrir ce CSV et
supprimer la première colonne, et re-sauver en TXT.
Voili, voilà... c'est fait :-)
Encore merci et bonne soirée ;-)



C'était un peu artisanal ... car je n'avais pas réalisé le problème des
12000 lignes ..mais celà fonctionnait je l'avais vérifié.
A la fin il suffisait de sélectionner la totalité de la colonne B et
puis de reprendre par copie-coller dans NotePad.

Merci du retour ..


Cordialement,
jackr13
Gloops
Le #19081241
Bonjour,

Sniper a écrit, le 08/04/2009 20:01 :
Merci à tous pour les idées. J'ai testé la recherche sur les RegE xp dans
Notepad++, mais ça ne fonctionne pas correctement.



Si tu as Word tu peux remplacer ^p
par YYY^pxxx

l'inconvénient de cette méthode étant qu'ensuite il reste à réc upérer à
la main le xxx de la fin de fichier pour le mettre au début.



J'ai donc utilisé l'idée de jackr13 dans mon vieux Excel.
En fait, il suffit de créer la formule ="xxx"&A1&"YYY" en B1, de
copier/coller dans les 12000 lignes suivantes et de sauver en CSV, puis
fermer le fichier dans Excel. On ne peut pas supprimer la colonne 1 de
suite, sinon la formule donne #REF. Rouvrir ce CSV et supprimer la
première colonne, et re-sauver en TXT.



Si si, on peut, mais pas en collage normal, bien entendu, il faut faire
un collage spécial, en valeur. Une fois que c'est fait on peut supprime r
la colonne temporaire.

Voili, voilà... c'est fait :-)
Encore merci et bonne soirée ;-)



Très bien. Bonne soirée.
Sniper
Le #19081551
Gloops a exposé le 08/04/2009, Sainte Julie :

un collage spécial, en valeur.



Bon sang, mais c'est bien sûr ! LOL je me disais bien que j'avais zappé
un truc LOL
Rhhaalala... il ne fait pas bon vieillir :-/

--
Sniper

Le lancement du poids, c'est la pétanque des costauds. - Philippe
Geluck
MELMOTH
Le #19084421
Ce cher mammifère du nom de mdnews nous susurrait, le mercredi
08/04/2009, dans nos oreilles grandes ouvertes mais un peu sales tout
de même, et dans le message
suivants :

(Note: EdipadPro est maintenant aussi disponible en Français)



Précisons tout de même que la version "pro" de cet excellent éditeur
est _payante_...
Mais pour le pékin lambda melmothéen, la version "lite" gratuite est
amplement suffisante, n'est-ce pas...

--
Car avec beaucoup de science, il y a beaucoup de chagrin ; et celui qui
accroît sa science, accroît sa douleur.
[Ecclésiaste, 1-18]
MELMOTH - souffrant
mdnews
Le #19087041
On Thu, 09 Apr 2009 11:38:39 +0200, MELMOTH
(Note: EdipadPro est maintenant aussi disponible en Français)





Précisons tout de même que la version "pro" de cet excellent éditeur
est _payante_...



Oui, mais pour celui qui en a l'usage, la version pro à un tas
d'options et notamment une gestion très etudiée des expressions
régulières (et pour cause, quand on connait le hobby de l'auteur)
La plupart des autres editeurs sachant utiliser les RegEx, ne savent
pas, par exemple, utiliser le resultat dans un remplacement.
(cf l'opération que j'ai décrite en réponse à l'article original)

Mais pour le pékin lambda melmothéen, la version "lite" gratuite est
amplement suffisante, n'est-ce pas...



Oui,
JF
Le #19090011
*Bonjour Sniper* !

Amis du jour, bonjour.
C'est surement tout bête, mais je cale sur un listing à modifier....
Soit un fichier TXT contenant une liste de noms de 12000 lignes environ.
Je souhaite ajouter à chaque nom un texte (toujours le même XXX) en début de
ligne. Et un autre texte (toujours le même YYY) en fin de ligne.
Tout en conservant bien sûr la structure et les sauts de lignes....
J'ai bien tenté le coup sous Notepad++ mais il ne gère pas les sauts de
ligne.
J'ai tenté le coup sous Excel, mais ma faible connaissance en matière de
formules.... bref, si un bon samaritain pouvait me donner une formule Excel
pour automatiser ça, ça me dépannerait bien ;-)
Merci d'avance.



Avec PSPAD :
Menu Edition, Traitement des lignes, Insérer du texte aux lignes
Cocher "ignorer les lignes vides"
http://www.gratilog.net



Démo :

Lorem ipsum dolor sit amet.

Consectetuer feugiat aliquet turpis pretium.

Urna congue neque.

Nibh sem Quisque consequat.

Id Nulla nibh.

Tortor ac rutrum dapibus.

Dictum Morbi habitasse Integer laoreet mattis.

Libero ac congue Phasellus.

In eget mollis malesuada.

==>

DEBUTLIGNE Lorem ipsum dolor sit amet. FINLIGNE

DEBUTLIGNE Consectetuer feugiat aliquet turpis pretium. FINLIGNE

DEBUTLIGNE Urna congue neque. FINLIGNE

DEBUTLIGNE Nibh sem Quisque consequat. FINLIGNE

DEBUTLIGNE Id Nulla nibh. FINLIGNE

DEBUTLIGNE Tortor ac rutrum dapibus. FINLIGNE

DEBUTLIGNE Dictum Morbi habitasse Integer laoreet mattis. FINLIGNE

DEBUTLIGNE Libero ac congue Phasellus. FINLIGNE

DEBUTLIGNE In eget mollis malesuada. FINLIGNE

--
Salutations, Jean-François
http://fspsa.free.fr/Index-de-la-FAQ-WINXP-de-Panthere-Noire.htm
http://fspsa.free.fr/Capture-Ecran-et-Publication-vers-Newsgroups.htm
http://fspsa.free.fr/contamination-lecteurs-amovibles.htm
Publicité
Poster une réponse
Anonyme