Je gère dans mon Gantt un certain nombre et type de tâche, notamment il m’arrive de faire un planning pour la gestion des anomalies et de certaine tâche de réalisation.
Dans mon cas, ce que je cherche à faire est de coloriser le fond de la cellule du titre si il contient le mot “Anomalie”
Tout d’abord ouvrir Visual Basic Editor :
Ensuite dans le fichier “ThisProject” ajouter le code suivant :
'Déclaration de la classe contenant les évènements de MS Prject
Dim e As New MyEvent
Private Sub Project_Open(ByVal pj As Project)
'Passage de l'application à la classe d'évènement
Set e.App = Application
'Passage du projet en cours à la classe d'évènement
Set e.Proj = Application.ActiveProject
End Sub
Créer un Module de Class nommé “MyEvent”
Et insérer le code suivant :
'Récupération des évènements sur l'application
Public WithEvents App As Application
'Récupération des évènements sur le projet
Public WithEvents Proj As Project
'---------------------------------------------------------------
'---------------------------------------------------------------
'
' Methode permettant d'effectuer des actions
' avant la modification d'une tâche, dans cet exemple
' je colori la ligne si dans le titre le mot 'Anomalie' est trouvé
'
'---------------------------------------------------------------
'---------------------------------------------------------------
Private Sub App_ProjectBeforeTaskChange(ByVal t As Task, ByVal Field As PjField, ByVal NewVal As Variant, Cancel As Boolean)
If (Field = pjTaskName) Then
If NewVal Like "*Anomalie*" Then
ActiveCell.CellColor = pjRed
Else
ActiveCell.CellColor = pjWhite
End If
End If
End Sub
Maintenant enregistrer le fichier, fermer MS Project et réouvrir MS Project et le projet en question. Ajouter une tâche contenant le mot “Anomalie” et regarder le résultat:
Aucun commentaire:
Enregistrer un commentaire