我正在将宏代码迁移到VSTO中。我遇到TimeScaleData问题。宏代码是这样的。
For Each tsk In ActiveProject.Tasks
If tsk.Summary = False And tsk.Duration <> 0 Then
With tsk
Set tsvs = .TimeScaleData(StartDate:=ActiveProject.ProjectStart, EndDate:=ActiveProject.ProjectFinish, Type:=pjTaskTimescaledBaselineWork, timescaleunit:=pjTimescaleWeeks, Count:=1)
End With
For Each tsv In tsvs
differencedate = 0
If tsk.BaselineStart <> "NA" And tsk.BaselineFinish <> "NA" Then
If tsk.BaselineStart >= tsv.StartDate And tsk.BaselineStart <= tsv.StartDate + 7 And tsk.BaselineFinish <= tsv.StartDate + 7 Then
differencedate = Application.DateDifference(tsk.BaselineStart, tsk.BaselineFinish, ActiveProject.Calendar) / 60
ElseIf tsk.BaselineStart >= tsv.StartDate And tsk.BaselineStart <= tsv.StartDate + 7 And tsk.BaselineFinish >= tsv.StartDate + 7 Then
differencedate = (Application.DateDifference(tsk.BaselineStart, tsv.StartDate + 7, ActiveProject.Calendar)) / 60
ElseIf tsk.BaselineStart <= tsv.StartDate And tsk.BaselineFinish >= tsv.StartDate And tsk.BaselineFinish <= tsv.StartDate + 7 Then
differencedate = (Application.DateDifference(tsv.StartDate, tsk.BaselineFinish, ActiveProject.Calendar)) / 60
ElseIf tsk.BaselineStart <= tsv.StartDate And tsk.BaselineFinish >= tsv.StartDate + 7 Then
differencedate = Application.DateDifference(tsv.StartDate, tsv.StartDate + 7, ActiveProject.Calendar) / 60
End If
End If
Next
End if
Next
我需要将此翻译为C#,任何可以提供帮助的人吗?