Free float as duration automatically

Member for

17 years 9 months

Martin, this is how VBA could look like (see next post)

Member for

17 years 9 months

Sub ExtendTasksDurationToEliminateFreeSlack()


 


Dim tsk As Task


Dim amntTasksExtended As Integer


 


amntTasksExtended = 0


 


 


For Each tsk In ActiveProject.Tasks


 


If tsk.FreeSlack > 0 Then


 


tsk.Duration = tsk.Duration + tsk.FreeSlack


 


amntTasksExtended = amntTasksExtended + 1


 


End If


 


 


Next tsk


 


MsgBox (amntTasksExtended & " tasks have been extended to eliminate free slack")


 


 


End Sub

Member for

10 years 7 months

Thank you for the answers,

No I only want to use it on follow on activities, which will run from and to dates given by other parameters. This means that I have to change duration on the follow on activities when the other parameters changes, for example an installation date. I want it to have free float zero and not on critical path.

Member for

21 years 8 months

If you give them more time they will use it pretending to be busy as there is no hurry, it is the opposite of targeting a tight schedule in the hope you will make it, it is contrary to common sense.  

It can be done using formulas, a user defined field to store remaining duration before the tweaking, then add current free float to remaining durations using formulas, recalculate and present the schedule with no free float, before updating restore schedule remaining durations to value before the tweaking, make the update, get new free float values and continue the cycle of deception. 

Does Safran Project recommends such a deception strategy?

Member for

17 years 9 months

Martin,

I assume, that under " set free float of a activity as the activity's duration" you mean to extend activitie's duration in such a way, that its free float would be 0.

There is no standard way to do it, you would have to write Visual Basic script for it.

But I wonder, why would you need it?

Regards.

Evgeny