Macro pour extraire la fin d'un texte Word

Résolu/Fermé
Guthurhall Messages postés 4 Date d'inscription mercredi 26 janvier 2011 Statut Membre Dernière intervention 2 mars 2011 - 21 févr. 2011 à 14:41
m@rina Messages postés 20183 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 9 mai 2024 - 2 mars 2011 à 18:11
Bonjour,

Après des heures de recherches, je ne trouve pas la réponse à ma question.

Je cherche simplement à écrire une macro pour sélectionner la dernière ligne d'un texte sous Word.

Je cherche ensuite à reprendre cette ligne pour l'utiliser comme nom de la sauvegarde du fichier texte.

Pour la sauvegarde, c'est bon mais pour extraire cette ligne, je n'y parviens pas.

Auriez vous une solution ?

Merci de votre aide.

Cdt


A voir également:

5 réponses

Christdenoel Messages postés 377 Date d'inscription lundi 21 février 2011 Statut Membre Dernière intervention 21 juillet 2012 104
26 févr. 2011 à 23:24
Si tu n'as q'un texte par document procède comme suit [Au fait t'as quelle version de word??]

1) NB: lis bien l'aide de Word 2007 en choisissant le premier article que tu trouve après avoir lancé l'aide et rechercher la requête suivante: "Enregistrer macro"

2) Ouvre ton document

3) Enregistre une macro clavier dans le modèle normal.dot et affecte lui une combinaison inutilisée comme: Ctrl + Alt + A ou autre

4) Lorsque l'enregistrement de la macro commence:
- tape: Ctrl + Fin (ou End)
- maintient la touche Maj enfoncée et appuis sur début (ou Home)
- tape: Ctrl + C
- tape: Ctrl + S [accessoire car tu peux t'arrêter à l'étape précédente si ça ne marche pas]

5) Clique sur arrêter l'enregistrement

6) tape: Ctrl + S pour enregistrer, puis: Ctrl + V pour coller le texte copié dans le champ "nom du fichier".

Voilà! J'aurais besoin de plus de détails ou que tu m'envoie des exemplaires du document pour plus de précision
P.S.: ne fait aucune erreur ni annulation, ni frappe supplémentaire autre que celles indiquées (sauf si tu veux agrémenter parce que tu t'y connais (^^) car elles seront enregistrées dans la macro!
Bonne chance
0
m@rina Messages postés 20183 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 9 mai 2024 11 279
Modifié par m@rina le 27/02/2011 à 14:38
Bonjour,

Une ligne pour Word ne signifie rien. Donc, bien savoir s'il s'agit du dernier paragraphe ou peut être la dernière phrase d'un paragraphe...

Pour le dernier paragraphe :

Sub dernier_para() 
Dim nom 

With Selection 
   .EndKey Unit:=wdStory 
   .MoveUp Unit:=wdParagraph, Count:=1, Extend:=wdExtend 
End With 
nom = Selection.Text 

ActiveDocument.SaveAs FileName:=nom & "docx" 

End Sub



m@rina

- "Sur le forum bureautique, on pose des questions concernant la bureautique..."
- "Ah bon ???"
0
Guthurhall Messages postés 4 Date d'inscription mercredi 26 janvier 2011 Statut Membre Dernière intervention 2 mars 2011
1 mars 2011 à 16:27
Avec un peu de retard, je vous remercie de vos réponses !

Ca fonctionne parfaitement !!

Merci, merci !!
0
Christdenoel Messages postés 377 Date d'inscription lundi 21 février 2011 Statut Membre Dernière intervention 21 juillet 2012 104
1 mars 2011 à 16:30
De rien! Mais... qu'est-ce qui fonctionne au juste (en effet ta l'enregistrement assisté et le script)?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Guthurhall Messages postés 4 Date d'inscription mercredi 26 janvier 2011 Statut Membre Dernière intervention 2 mars 2011
2 mars 2011 à 16:48
Les deux ! Mais ta méthode est plus simple à mettre en oeuvre et surtout, elle permet de parfaitement adapter le code à ce que je souhaite faire... dans la limite de l'enregistreur de macro.

Encore merci à tous deux !!!
0
m@rina Messages postés 20183 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 9 mai 2024 11 279
2 mars 2011 à 18:11
Le problème d'une macro enregistrée c'est que ça débouche sur un code souvent indigeste... Il vaut mieux avoir un code correctement écrit...
L'enregistreur est ton ami, il aide bien quand on connaît mal le langage, mais il peut aussi devenir un ennemi !
1