gpt4 book ai didi

excel - 使用 VBA 从 Excel 表中导入 Sharepoint 2010 列表数据

转载 作者:行者123 更新时间:2023-12-04 20:45:12 27 4
gpt4 key购买 nike

我已经学会了如何仅使用 VBA 简单宏将共享点列表中的数据收集到 Excel 中。

现在我想换一种方式 - 更新我的 Excel 文件中的一些列表,然后将它们发送回 sharepoint 以更新列表,仅使用 VBA。

这可能吗,如果是的话 - 怎么做?

谢谢!

最佳答案

是的。您可以使用 XMLHttpRequest Microsoft 的 XML SDK 提供的对象,以及 SharePoint 提供的用于更新一个或多个项目的 UpdateListItems Web 服务。在 Visual Basic 编辑器的“工具”->“引用”菜单中添加对“Microsoft XML,v6.0”的引用,然后使用类似于以下代码的内容。

Dim objXMLHTTP As MSXML2.XMLHTTP

Dim strListNameOrGuid As String
Dim strBatchXml As String
Dim strSoapBody As String

Set objXMLHTTP = New MSXML2.XMLHTTP

strListNameOrGuid = "My List Name or GUID"

' Delete item with internal ID of "1"
strBatchXml = "<Batch OnError='Continue'><Method ID='1' Cmd='Delete'><Field Name='ID'>1</Field></Method></Batch>"

objXMLHTTP.Open "POST", "http://myserver/mysite/_vti_bin/Lists.asmx", False
objXMLHTTP.setRequestHeader "Content-Type", "text/xml; charset=""UTF-8"""
objXMLHTTP.setRequestHeader "SOAPAction", "http://schemas.microsoft.com/sharepoint/soap/UpdateListItems"

strSoapBody = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' " _
& "xmlns:xsd='http://www.w3.org/2001/XMLSchema' " _
& "xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'><soap:Body><UpdateListItems " _
& "xmlns='http://schemas.microsoft.com/sharepoint/soap/'><listName>" & strListNameOrGuid _
& "</listName><updates>" & strBatchXml & "</updates></UpdateListItems></soap:Body></soap:Envelope>"

objXMLHTTP.send strSoapBody

If objXMLHTTP.Status = 200 Then
' Do something with response
End If

Set objXMLHTTP = Nothing

您可以阅读有关 UpdateListItems 语法的更多信息。以及如何通过 here 构建批处理 XML .

关于excel - 使用 VBA 从 Excel 表中导入 Sharepoint 2010 列表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20116896/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com