Microsoft 365 和 Office | Project | 商业版 | Windows
用于在工作组成员、项目经理和其他利益干系人之间规划、管理和交流项目日程安排和其他信息的 Microsoft 项目管理软件。
您好,请教MS Project日历“例外日期”设置问题:
有些工程项目冬季无法进行混凝土施工,每年11月至来年3月需要停工。我现在需要每年设置一个停工条目(如下图),有些麻烦,需要不断增加,是否有更好的方案呢?
用于在工作组成员、项目经理和其他利益干系人之间规划、管理和交流项目日程安排和其他信息的 Microsoft 项目管理软件。
注:此回复为自动翻译,因此可能存在语法错误或表达不通顺之处。
您好 @阿信
除了手动添加外,您也可以尝试使用 VBA 代码:
Sub CreateWinterShutdowns()
Dim cal As Calendar
Dim ex As Exception
Dim yr As Integer
Set cal = ActiveProject.Calendar
For yr = 2025 To 2050
Set ex = cal.Exceptions.Add("Winter Shutdown " & yr)
ex.Start = DateSerial(yr, 11, 1)
ex.Finish = DateSerial(yr + 1, 3, 31)
Next yr
MsgBox "Winter shutdown exceptions created.", vbInformation
End Sub
此解决方案基于 Microsoft Project 文档及标准 VBA 对象模型参考资料。根据您的具体环境,某些属性、方法或日历行为可能会有所不同。若要使宏在您的特定配置中正常运行,可能需要进行额外的修改。
例如:
Set cal = ActiveProject.Calendar
这使用的是项目的默认日历。如果您的组织使用自定义日历,请将其更改为:
Set cal = ActiveProject.BaseCalendars("您的日历名称")