user_mobilelogo
Etoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactives
 

 

S'il n'y a qu'un contrôle ou bien si le modèle ne risque pas d'être modifé, on peut utiliser le numéro d'index du contrôle :

La propriété Item(1) indique qu'on utilise le premier contrôle du modèle. Remplacer le numéro 1 par le numéro souhaité si nécessaire.


Dim controle As ContentControl
Set controle = ActiveDocument.ContentControls.Item(1)

On peut également utiliser le titre du contrôle ou encore mieux, la balise. C'est plus sûr que le numéro d'item. Pour cela, affichez les propriétés du contrôle, et dans la boîte de dialogue, donnez un titre et un nom de balise.

La macro suivante teste tous les contrôles de contenu du document et, si elle trouve le contrôle dont la balise est "mon_tag", elle donne le numéro du type de contrôle. Si vous préférez le titre, remplacez Tag par Title.

Sub test()
Dim controle As ContentControl
For Each controle In ActiveDocument.ContentControls
If controle.Tag = "mon_tag" Then
MsgBox "le contrôle est de type " & controle.Type
End If
Next
End Sub

 

Sinon, on peut utiliser le numéro d'identification (ID) qui, lui, ne change jamais, quelles que soient les modifs qui seront faites dans le document et quel que soit l'emplacement du contrôle. Pour cela, on lance la macro suivante une fois afin de récupérer le numéro d'ID :

Sub test()
MsgBox ActiveDocument.ContentControls(1).ID
End Sub

 

Muni de ce numéro d'ID, on l'insère dans la macro, à la place des 0000000 de cet exemple.
Par exemple la macro suivante ajoute dans le nom du document la date du jour  :

Sub enregistre()
'macro écrite par m@rina
Dim controle As ContentControl
Dim mondoc, madate
For Each controle In ActiveDocument.ContentControls
If controle.ID = 0000000# Then
nomdoc = controle.Range
End If
Next
madate = Format(Now, "yyyy-MM-")
ActiveDocument.SaveAs FileName:="C:...\" & madate & nomdoc & ".docx"
End Sub


Statistiques

Aujourd'hui1077
Hier2616
Cette semaine9328
Ce mois47574
Total depuis 200411092563

33
visiteurs actuellement en ligne