Nous pouvons accéder manuellement à ces « Propriétés personnelles de document » par la séquence :
Fichier >
Informations > Informations sur le projet > Propriétés avancées >
Personnalisation
Dans une application Visual Basic, il est possible d’y stocker des données utilisées par le programme VBA, informations qui pourront être mémorisées d’une session à l’autre.
La procédure VBA suivante vérifie l’existence d’une rubrique personnalisée. Si celle-ci n’existe pas, la procédure VBA la crée.
Si elle existe, la procédure VBA y dépose la valeur correspondante :
Nous utilisons la Propriété CustomDocumentProperties :
La Sub ci-dessous est appelée par une autre Sub qui lui passe deux variables : Nom et Valeur.
Sub StockInCDP(Nom, Valeur)
'Stocke 'SurfVoirie';
SurfBuroEtage;NbCell;SurfSolBur,.. dans
CDP : Custom Document Properties
Dim Prop As DocumentProperty
Dim Existe As Boolean
Existe = False
For Each Prop In ActiveProject.CustomDocumentProperties
If Prop.Name = Nom Then
Existe = True 'La
CDP existe !
Exit For
End If
Next Prop
If Existe = False Then 'Il faut créer la propriété "GSVoirie"
Application.ActiveProject.CustomDocumentProperties.Add
_
Name:=Nom, _
LinkToContent:=False,
_
Type:=msoPropertyTypeString,
_
Value:=Valeur, _
LinkSource:=False
Else 'La CDP existe : la renseigner
ActiveProject.CustomDocumentProperties(Nom)
= Valeur
End If
End Sub
Lecture : de la Propriété CustomDocumentProperties.
Cette lecture est
directe. Par exemple :
NbCell = ActiveProject.CustomDocumentProperties("GSNbCell")