システムwiki

前任者が完了したらマイルストーンが完了します

roteeba 受付中 最終更新日:2021-05-14 02:48

こんにちは、

私は活動の負荷を払って大きなスケジュールを持っています.異なるフェーズを追跡するために、私はフェーズが完成したときにマイルストーンを使って紹介しました.

各要約タスクの最後に、私は例えば "Design Phase Complete"、0daysの期間と前任者としての要約タスクを示すマイルストーンを持っています.そのため、サマリータスク「設計フェーズ」の場合、すべてのサブタスクが100%完了した場合、マイルストーンが期待されます
自動的に100%完了するため.これは役立つので、私のスケジュールの上にマイルストーンのリストを持つことができます.

これはMSプロジェクトで可能ですか?これに組み込まれている機能はありますか? CoSマイルストーンは私のスケジュールで更新されていません.

返信リスト(回答:4)

4 #
JanDeMe

こんにちは

このための組み込み関数はありません.BeforeSaveなどのイベントに基づいてVBAルーチンを作成することもできますが、このための組み込み関数はありません.申し訳ありません.

応答4# ->にスキップ
3 #
roteeba

こんにちは1月、

それは少し驚くべきことです.私はこれがほとんどのプランナーが持っていて、プロジェクトが今でこれを建てたことになるという関数になると思ったでしょう.たぶんそれは私がナイヴェルであるだけです.

あなたは私をVBAで助けてもらえますか?これがあなたのスケジュールだったら、同じ結果を達成するために何をしますか?マクロや何か他のものを使うのですか?

応答3# ->にスキップ
2 #
JanDeMe 1

こんにちは

はい、次のように見えるVBAプロシージャ(マクロと同じ)を使用します:

サブマイルストーンコンプリート

タスクとしての薄暗い仕事

タスクとしての薄暗いPred

PCTを整数として暗くする

activeproject.tasksの各ジョブについて

仕事がなければ何もありません

if job.milestone then

pct=100

job.predecessortasksの各predに対して

pred.percentcomplete=100でない場合

pct=0

終了

終了する

次の捕食者

job.percentcomplete=pct

終了する

終了する

次の仕事

サブの終了

応答2# ->にスキップ
1 #
RodGill 1
一部のスケジュールには、他のタイプのイベントを示すために日付によってマイルストーンが設定されているため、これは前任者のマイルストーンに対してのみ行います.だから私は使用します:
Sub UpdateMilestones()
'Project_BeforeSaveイベントによって呼び出されます.すべての先行タスクが完了した場合、マイルストーンを100%完了に設定します
Dim complete As Boolean
Dim Tsk As Task
Dim TskPred As Task
For Each Tsk In pj.Tasks
If Not Tsk Is Nothing Then
If Tsk.Milestone And Tsk.PredecessorTasks.Count>0 Then 'リンク付きのマイルストーンの場合のみ
complete=True
For Each TskPred In Tsk.PredecessorTasks
If TskPred.Percentcomplete<100 Then
complete=False
Exit For
End If
Next TskPred
If complete Then
Tsk.Percentcomplete=100
End If
End If
End If
次のTsk
End Sub