问题描述
我一直在尝试将项目数据从 Excel 导入 MS Project;特别是任务名称、大纲级别以及创建、开始、完成和实际完成日期。我能够很好地导入所有数据......除了实际完成日期。所有实际完成日期都使用 NA 而不是实际日期填充。
我最初只是想通过 MS Project 的导入向导进行导入。然后我记录了以下宏,产生了相同的结果。 (这是我为 MS Project 做过的第一个宏,但我之前曾将 VBA 与 Excel 一起使用。)是否存在规则集,其中导入中的任何其他日期都会以某种方式导致实际完成日期强制 NA ?或者你知道我的问题的任何其他原因吗?
Sub Import()
' Macro Import
' Macro Recorded Thu 3/18/21 by Pincince; marc.
MapEdit Name:="Map ",Create:=True,OverwriteExisting:=True,DataCategory:=0,CategoryEnabled:=True,_
TableName:="Cleaned",FieldName:="Name",ExternalFieldName:="Summary",ExportFilter:="All Tasks",ImportMethod:=0,_
HeaderRow:=True,AssignmentData:=False,TextDelimiter:=Chr$(9),TextFileOrigin:=0,UseHtmlTemplate:=False,IncludeImage:=False
MapEdit Name:="Map ",FieldName:="Outline Level",ExternalFieldName:="Outline_Level"
MapEdit Name:="Map ",FieldName:="Created",ExternalFieldName:="Created"
MapEdit Name:="Map ",FieldName:="Start",ExternalFieldName:="Start_date"
MapEdit Name:="Map ",FieldName:="Finish",ExternalFieldName:="Due_date"
MapEdit Name:="Map ",FieldName:="Actual Finish",ExternalFieldName:="Actual_Completion_Date"
MapEdit Name:="Map ",FieldName:="Notes",ExternalFieldName:="Notes_w_Comments"
FileOpenEx Name:="MYPATH\Project Import Prep.xlsx",_
ReadOnly:=False,Merge:=0,FormatID:="MSProject.ACE.14",map:="Map ",DoNotLoadFromEnterprise:=True
End Sub
解决方法
当未导入 % Complete 字段时,这些字段值默认为 0,实际完成将被忽略。诀窍是包含 % Complete 而不是导入 Actual Finish;完成日期用于设置完成百分比 = 100 时的实际完成时间。