Macro pour extraire la fin d'un texte Word

Résolu
Guthurhall Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
m@rina Messages postés 23866 Date d'inscription   Statut Contributeur Dernière intervention   -
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 379 Date d'inscription   Statut Membre Dernière intervention   104
 
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 23866 Date d'inscription   Statut Contributeur Dernière intervention   11 462
 
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   Statut Membre Dernière intervention  
 
Avec un peu de retard, je vous remercie de vos réponses !

Ca fonctionne parfaitement !!

Merci, merci !!
0
Christdenoel Messages postés 379 Date d'inscription   Statut Membre Dernière intervention   104
 
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   Statut Membre Dernière intervention  
 
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 23866 Date d'inscription   Statut Contributeur Dernière intervention   11 462
 
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