Avec l'aimable autorisation de msProjectExperts
http://www.projectserverexperts.com
Aprs avoir ajoutŽ un nouveau champ Entreprise personnalisŽ contenant une formule de calcul, Project Server ne recalcule pas automatiquement la formule dans les projets prŽexistants. Chaque projet doit tre ouvert individuellement, les calculs exŽcutŽs et enfin le projet sauvegardŽ.
La solution manuelle consiste pour chaque Responsable de projet – Project Manager – ˆ ouvrir chaque planning qu'il gre, presser la touche de fonction [F9] pour lancer le calcul du projet, et puis enregistrer le projet.
Cette procŽdure est fastidieuse si vous avez de nombreux projets. Une solution alternative consiste ˆ crŽer une procŽdure VBA qui automatisera ce process.
Avant de crŽer la procŽdure VBA, vous devez crŽer la liste des projets dans un fichier :
Maintenant, vous pouvez Žcrire la procŽdure VBA proprement dite :
Sub Update_Calculated_Field()
Dim strProj As String
Dim fs As Object, Projs As Object, ts
Set fs = CreateObject("Scripting.FileSystemObject")
Set Projs = fs.GetFile("\\Pragmasvr\Mes documents PragmaSvr\Liste Projets.csv")
Set ts = Projs.OpenAsTextStream
'Steps thru each project in the file
Do Until ts.AtEndOfStream
strProj = ts.ReadLine
FileOpen "<>\" & strProj 'Opens enterprise project
Application.CalculateProject
'Application.PublishAllInformation 'uncomment if you need to also publish the plans
FileClose pjSave
Loop
End Sub
NB : Dans cette procŽdure, il est admis que tous les projets sont bien ArchivŽs – Checked-in. D'autre part l'exŽcution de ce code peut tre trs longue
NB : Nombre maximum de fentres ouvrable dans MS Project Professional 2003 (Sous Windows 2000) : 50 fentres au maximum.