Application.ResourceAssignment 方法 (Project)

分配、删除或替换所选择任务的资源,或者更改资源的单位数值。

语法

表达式ResourceAssignment (ResourcesOperationwith)

expression:表示 Application 对象的变量。

参数

名称 必需/可选 数据类型 说明
资源 可选 String 要分配的资源名称删除或替换所选任务中。

注意 如果单位值中包含数千个分隔符或小数分隔符,Project 将不会分配资源。
操作 可选 Long 如果省略 操作 ,Project 会将资源分配给所选任务。 默认值是 pjAssign 。 可以是 PjResAssignOperation 常量之一。
With 可选 String OperationpjReplace 常量一起使用时,指定替换所选任务的资源的名称。

PjResAssignOperation 常量

常量 说明
pjAssign 为选择的任务分配指定资源。
pjRemove 删除所选择任务中的指定资源。
pjReplace With 指定的资源将替换 Resources 指定的资源
pjChange 更改指定资源的资源单位。 该常量仅用于单一资源。

返回值

Boolean

说明

使用 Resources 参数指定在使用资源替换向导时请求或要求资源分配。 例如,下面的宏指定分配给所选任务的 r1 的是请求的分配。

Sub RequestAssignment()
    ResourceAssignment Resources:="r1[100%, R]", Operation:=pjChange, With:="" 
End Sub

注意

以这种方式使用 Resources 参数时, D 指定“Demand”, R 指定“Request”, N 指定“None”。此外,单位值和请求/需求值之间不允许有空格。 对于示例, Resources:="100%,R"的工作原理,但 Resources:="100%, R"却不。

资源置换向导不能替代材料资源。 因此,不能使用 Resources 参数请求或要求特定工作分配的材料资源。

示例

下面的示例提示用户输入资源的名称,然后将该资源分配给所选择的任务。

Sub AssignResourceToSelectedTasks() 
 
    Dim Entry As String     ' The name of the resource to add to selected tasks 
    Dim R As Resource       ' Resource object used in For Each...Next loop 
    Dim Found As Boolean    ' Whether or not the resource is in the active project 
 
    Entry = InputBox$("Enter the name of the resource you want to add to the selected tasks.") 
     
    ' Assume resource doesn't exist in the active project. 
    Found = False 
 
    ' Look for the resource. 
    For Each R In ActiveProject.Resources 
        If Entry = R.Name Then Found = True 
    Next R 
 
    ' If the resource is found, then assign it to selected tasks. 
    If Found Then 
        ResourceAssignment Resources:=Entry, Operation:=pjAssign 
    ' Otherwise, tell user the resource doesn't exist. 
    Else 
        MsgBox ("There is no resource in the active project named " & Entry & ".") 
    End If 
     
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。