首頁‎ > ‎電子期刊‎ > ‎2005 年 第 6 期‎ > ‎

MS Project 物件模型應用一例(一)

摘要

  • 文章編號:20050305
  • 投稿日期:2005/02/25
  • 作者:董世尊、廖韋傑、陳冠廷、陳雅鳳、廖韋傑
  • 備註:

Microsoft Project 物件模型大局觀(摘自Microsoft Project Online Help)


Microsoft Project物件模型重要類別:

  • Projects與Project:

Project為代表Microsoft Project中之「專案」的類別,Projects為Project的集合物件;使用 Projects(Index),可以傳回單一的 Project 物件,其中 Index 是專案的索引號碼或專案的名稱。下面範例在所有開啟的專案之間切換,並記憶每個專案的全名,然後顯示結果。

Dim Temp As Long, Names As String

For Temp = 1 To Projects.Count

Projects(Temp).Activate

Names = Names & Projects(Temp).FullName & vbCrLf

Next Temp

MsgBox Names

  • Tasks與Task:

代表一個任務或多個任務。Task 物件是 Tasks 集合物件的一個成員。使用 Tasks(Index),可以傳回單一的 Task 物件,其中 Index 是任務的索引號碼或任務的名稱。下面範例列印使用中專案裡每個任務分派到的資源名稱。

Dim Temp As Long, A As Assignment

Dim TaskName As String, Assigned As String, Results As String

For Temp = 1 To ActiveProject.Tasks.Count

TaskName = "Task: " & ActiveProject.Tasks(Temp).Name & vbCrLf

For Each A In ActiveProject.Tasks(Temp).Assignments

Assigned = A.ResourceName & ListSeparator & " " & Assigned

Next A

Results = Results & TaskName & "Resources: " & _

Left$(Assigned, Len(Assigned) - Len(ListSeparator & " ")) & vbCrLf & vbCrLf

TaskName = ""

Assigned = ""

Next Temp

MsgBox Results

  • Resources與Resource:

代表一個或多個資源。Resource 物件是 Resources 集合物件的一個成員。 使用 Resources(Index),可以傳回單一的 Resource 物件,其中 Index 是資源的索引號碼或資源的名稱。下面範例列出使用中專案所有資源的名稱。

Dim R As Long, Names As String

For R = 1 To ActiveProject.Resources.Count

Names = ActiveProject.Resources(R).Name & ", " & Names

Next R

Names = Left$(Names, Len(Names) - Len(ListSeparator & " "))

MsgBox Names

Comments