2

我希望我可以使用 VBA 从 Excel 更新共享点列表,因为我觉得在 Excel 上工作比在 Share Point 上工作更舒服。

我使用下面的代码将共享点列表数据导入 Excel,工作正常

Sub ImportSharePointData()
Dim objWksheet As Worksheet
Dim CheckListObject As ListObject
Const strSPServer As String = "http://ServerName/_vti_bin"
Const LISTNAME As String = "{69D094F2-40AD-8225-26F4260A1DDB}"
Const VIEWNAME As String = "{4C6620BC-422D-9363-642F332FBF7B}"

' Worksheet in which data imports.
Set objWksheet = WksSharePointData
objWksheet.Activate

' Delete old data list if exists
Set CheckListObject = objWksheet.Range("A1").ListObject
    If CheckListObject Is Nothing Then
    Else
        objWksheet.Range("A1").ListObject.Delete
    End If

' Add a list range to the newly created worksheet and populated it with the data from the SharePoint list.
Set objMyList = objWksheet.ListObjects.Add(xlSrcExternal, _
    Array(strSPServer, LISTNAME, VIEWNAME), False, xlGuess, Range("A1"))

End Sub

我有以下代码来更新共享点列表,但不幸的是它根本不起作用:(

Sub UpdateSharePoint()
Dim CheckListObject As ListObject
Dim objWksheet As Worksheet
Const strSPServer As String = "http://ServerName/_vti_bin"
Const LISTNAME As String = "{69D094F2-40AD-8225-26F4260A1DDB}"
Dim retUrl As String

' Worksheet in which data imports.
Set objWksheet = WksSharePointData
objWksheet.Activate

Set CheckListObject = objWksheet.Range("A1").ListObject
' Publish the table to share point
retUrl = CheckListObject.Publish(Array(strSPServer, LISTNAME), False)

End Sub

当我执行上面的代码时,我得到最后一行代码

“运行时错误'-2147467259 (80004005)':发生意外错误。无法保存对数据的更改”

有人可以帮助我吗?谢谢

4

0 回答 0