當前位置:律師網大全 - 專利申請 - 如何通過vba操作microsoft project

如何通過vba操作microsoft project

有時候我們需要通過程序操縱MS Project(我們公司曾經需要將公司現有項目管理平臺的任務導入到MS Project中)。項目類似於其他微軟辦公軟件,Word和Excel,可以通過VBA進行操作。

下面是我用VB寫的壹個通用類。Ne給VBA打電話操縱MS項目。

這個類實現了創建和打開項目文件、添加任務、升級和降級任務以及保存項目等常見功能。

詳情請看註意事項。

公共類項目

作者:孫041201

Dimmprjapp作為MSProject。“應用程序”是指VB.Net的msproject類庫。

“Dim mRow As Integer = 0”記錄項目中任務的行號。

公共子新()

mPrjApp =新的MSProject。application end Sub public Sub new project()

MPrjApp。FileNew()'創建壹個新的項目文件結束子'項目可以保存為壹個數據庫。如果保存為數據庫,我們可以通過ODBC直接打開這個項目文件。

當然,如果您熟悉數據庫項目,也可以直接操縱數據庫中的數據來修改項目文件。雖然微軟已經提供了數據庫結構的描述,但是並不是很詳細,這方面的官方資料也相對較少。後面我會寫壹篇關於通過ODBC操縱項目數據庫的文章。

Public Sub Open(ByVal ODBCName為字符串,ByVal ProjectName為字符串)

mPrjApp。文件打開(" <+odbc name+" & gt;\ "+project name)End SubPublic Sub new project(ByVal tmpFileName作為字符串)

dim template name As Object = tmpFileName

mPrjApp。FileNew(False,template name)End Sub public Sub save As(ByVal file path As String)

如果木衛壹。文件存在(文件路徑)

IO。file . Delete(file path)End IfmPrjApp。文件另存為(FilePath,MSProject。pjfile format . pjmpp)End Sub public Sub add task(ByVal TaskName為字符串,ByVal StartDate為字符串,ByVal FinishDate為字符串,可選的ByVal Resource為String = " ")

MPrjApp。選擇任務字段(mRow,“名稱”)

MPrjApp。SetTaskField("名稱",任務名稱)

MPrjApp。SetTaskField("開始時間",開始日期)

MPrjApp。SetTaskField("完成日期")

MPrjApp。SetTaskField("資源名",Resource)'這裏的資源表示任務分配給誰,mrow = 1 end sub public sub degradation()。

mPrjApp。outline indent(1)End Sub public Sub Upgrade()

mPrjApp。outline outent(1)End Sub public Sub Close()

mPrjApp。FileCloseAll(MSProject。PjSaveType.pjDoNotSave)

MPrjApp。Quit()End SubEnd類這個類的例子(C#):

Project prj = new Project();

prj。new project(" D:\ Test \ Test . MPP ");

  • 上一篇:如何建立知識產權分類管理檔案
  • 下一篇:瑞成宇和產品效果如何?
  • copyright 2024律師網大全