1
我正在寫一個宏,用於將MS Excel工作表中的一列數據添加到現有的MS Project文檔中。當我運行我的宏時,打開了正確的項目,但我收到一條錯誤消息,說我打開的項目已被刪除,即使它尚未被刪除。如何將列從MS Excel添加到MS Project - VBA
這裏是我當前的宏:
Sub newProjectColumn()
Dim appProj As MSProject.Application
Dim aProg As MSProject.Project
Dim wb As Workbook
Dim ws As Worksheet
Dim rng As Range
Set wb = ActiveWorkbook
'~~> Open MS Project
Set ws = wb.Sheets("Sheet1")
Set appProj = CreateObject("Msproject.Application")
appProj.FileOpen "Project_1.mpp"
Set aProg = appProj.ActiveProject
appProj.Visible = True
'~~> Next, create new Column in project
TableEditEx Name:="Project_1.mpp", TaskTable:=True, _
NewFieldName:="Actual Duration", Title:="Actual Duration", Width:=12, _
ShowInMenu:=True, _
ColumnPosition:=29
'~~> Next, copy T:T from Excel.Then, paste to 29th column (i,29) in Project.
Set Rng = ws.Range("T:T")
ActiveSheet.Paste Destination:=Rng
SelectTaskColumn Column:="Actual Duration"
End Sub
對我做了什麼錯或是否有更好的辦法是非常讚賞的任何幫助!
哪條線發生錯誤?什麼是** excact **錯誤信息?你是否嘗試給'appProj.FileOpen'的完整路徑,就像'「C:\ What \ Ever \ Your \ Path \ Is \ Project_1.mpp」'?並確保使用'aProg.'(例如'aProg.TableEditEx ...'或Excel假定在Excel的ActiveSheet中不在項目中執行此操作(也檢查複製/粘貼等) –
請始終[編輯]您的問題,以便代碼可以格式化。註釋中的代碼基本上無法讀取。 –
對不起,有代碼格式問題,但... 確切的錯誤消息是:「運行時錯誤」1004 ':視圖或報告無法顯示,因爲它所基於的表'Project_1.mpp'已被刪除。「我在它之前添加了aProg,並得到一條新的錯誤消息:」運行時錯誤'438':Object – Peel