VBA\C#。如何自动将 MS Project 字段映射到 SharePoint 网站上的列表

问题描述 投票:0回答:1

我在 MS 项目中有一个任务列表,它与使用模板创建的 SharePoint 列表同步,它有自己的字段,例如“描述”,在项目中我将此字段分配给 Text5。我有一堆这样的 1 格式但内容不同的列表,我需要使用 VB 宏进行自动字段映射。 (或 C#)

当我尝试录制宏时,我只得到这个代码,并且在文档中我只看到设置任务的优先级

Sub Macro1()
    ManageSiteColumns
End Sub
c# vba sharepoint-online ms-project
1个回答
0
投票

要使用 VBA (Visual Basic for Applications) 自动执行 Microsoft Project 和 SharePoint 列表之间的字段映射,您可以利用 Microsoft Project 中的 Text# 字段来存储自定义数据。下面是一个示例 VBA 代码,您可以使用该代码将 SharePoint 中的“描述”字段映射到 Microsoft Project 中的“Text5”字段。

Sub MapFields()
    Dim projApp As MSProject.Application
    Dim projTask As MSProject.Task
    Dim customFieldNumber As Integer
    
    ' Set the Microsoft Project Application
    Set projApp = GetObject(, "MSProject.Application")
    
    ' Check if Microsoft Project is open
    If projApp Is Nothing Then
        MsgBox "Microsoft Project is not open. Please open Microsoft Project and try again.", vbExclamation
        Exit Sub
    End If
    
    ' Specify the custom field number (Text5)
    customFieldNumber = 5
    
    ' Loop through each task in the active project
    For Each projTask In projApp.ActiveProject.Tasks
        ' Update the Text5 field with the value from the SharePoint "Description" field
        projTask.TextFields(customFieldNumber).Text = GetDescriptionFromSharePoint(projTask)
    Next projTask
    
    ' Clean up
    Set projApp = Nothing
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.