VBA Excel 到 MS 项目

VBA Excel to MS Project

VBA 的新手,我正在从 Excel 成功导入和读取任务列表和资源,在 Excel 中执行 VBA 并将这些记录插入 MS Project .我正在考虑设置 ActiveProject.Resources.Standardrate = "100p/h",但出现错误。

正在应用的代码(以下代码归功于之前对 Whosebug 上其他相关问题提供的答案)。

If Not ExistsInCollection (newproject.Resources, strResource) Then
  newproject.resources.add.name = StrResource  <-- This works, resources are added.

  ' However, inserting the following line:

  newproject.resources.standardrate = "100p/h"  <-- It errors here

End if

非常感谢任何帮助 - 谢谢。

代码需要稍作修改以获取对 newly-added 资源的引用,以便随后可以更新 StandardRate。

此代码还演示了如何处理 comma-delimited 资源列表而不是单个资源的情况。

Dim t As Task
Set t = NewProject.Tasks.Add("New task 1")

Dim StrResource As String
StrResource = "Resource 1,Resource 2,Resource 3"
Dim arrRes As Variant
arrRes = Split(StrResource, ",")

Dim i As Variant
For Each i In arrRes
    If Not ExistsInCollection(NewProject.Resources, i) Then
        Dim r As Resource
        Set r = NewProject.Resources.Add(i)
        r.StandardRate = 100
    End If
    t.Assignments.Add , ActiveProject.Resources(i).UniqueID
Next i