Nom de dossier

Signaler
-
Messages postés
16683
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
30 octobre 2020
-
Bonjour,
Sous Word, j'aimerais insérer dans mon texte le nom du dossier (répertoire) qui contient mon fichier actuel, mais pas le chemin complet, juste le dossier parent.
Quelqu'un sait-il comment faire ?
Merci pour votre aide.
Paquito

5 réponses

Messages postés
16683
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
30 octobre 2020
9 854
C'est sûr que si tu dis ActiveDocument.Range, c'est le texte de tout le document qui va être remplacé.

pour faire simple, et pour insérer à l'endroit du point d'insertion, termine la macro comme ceci (à la place msgbox ...):

dossier = dossier(x - 1)
Selection.TypeText dossier


Après, bien sûr, on peut faire plus sophistiqué se on veut que ça s'insère automatiquement à l'enregistrement par exemple, à un endroit précis par exemple, etc.

m@rina


Messages postés
16683
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
30 octobre 2020
9 854
Messages postés
16683
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
30 octobre 2020
9 854
quand rien n'est sélectionné, c'est le point d'insertion qui compte.
Messages postés
16683
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
30 octobre 2020
9 854
Bonjour,

Avec une macro, par exemple :

Sub nom_dossier()
Dim chemin As String, dossier As Variant
chemin = ActiveDocument.FullName
For i = 1 To Len(chemin)
If Mid(chemin, i, 1) = Application.PathSeparator Then x = x + 1
Next
dossier = Split(chemin, Application.PathSeparator)
MsgBox dossier(x - 1)
End Sub


m@rina
Merci beaucoup, nous y sommes presque...
En fait, je voudrais insérer ce nom de dossier dans mon texte, au lieu de l'avoir dans une boîte de message.
J'ai essayé avec :
ActiveDocument.Range.Text = dossier(x - 1)
mais il remplace tout mon texte.
Il doit y avoir une histoire de point d'insertion.
Merci pour votre aide.
Paquito
Merci beaucoup.
Avec :
Selection.TypeText Text:=dossier(x - 1)
ça a marché aussi, mais je ne sais pas pourquoi...
Vu que rien n'était sélectionné, ou alors par défaut, le point d'insertion, ce qui expliquerait que ça marche.
En tous cas encore merci.
Paquito