Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VBA-无法通过REST API更新SharePoint 2013项目_Excel_Vba_Rest_Sharepoint 2013 - Fatal编程技术网

Excel VBA-无法通过REST API更新SharePoint 2013项目

Excel VBA-无法通过REST API更新SharePoint 2013项目,excel,vba,rest,sharepoint-2013,Excel,Vba,Rest,Sharepoint 2013,我试图通过REST API更新SharePoint项目,但收到以下错误: {“odata.error”:{“code”:“-1,System.InvalidOperationException”,“message”:{“lang”:“en-US”,“value”:“位置0处的数据类型与预期的不同。”}} 我不太确定是什么导致了这种情况——我将请求类型设置为JSON,但它似乎不接受我的输入。感谢您的帮助:-) 我的代码: Sub Work_Damn_You() Dim oXMLHTTP As O

我试图通过REST API更新SharePoint项目,但收到以下错误:

{“odata.error”:{“code”:“-1,System.InvalidOperationException”,“message”:{“lang”:“en-US”,“value”:“位置0处的数据类型与预期的不同。”}}

我不太确定是什么导致了这种情况——我将请求类型设置为JSON,但它似乎不接受我的输入。感谢您的帮助:-)

我的代码:

Sub Work_Damn_You()

Dim oXMLHTTP As Object

Dim sListNameOrGuid As String
Dim sBatchXml As String
Dim sSoapBody As String
Dim sWTF as string

Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.6.0")

sListNameOrGuid = sListName

With oXMLHTTP
    .Open "POST", "http://SPSITE.COM/_api/web/lists/GetByTitle('PAGE')/items(22)", True
    .setRequestHeader "X-RequestDigest", testerino
    .setRequestHeader "Accept", "application/json;odata=nometadata"
    .setRequestHeader "Content-Type", "application/json;odata=verbose"
    .setRequestHeader "__metadata", "(""type"":""SP.Data.QATrackerListItem"""

    sWTF = """preTestComment""=""Hello"""
    .send (sWTF)

    Debug.Print (.responseText)

    ' Check response
    If .Status = 200 Then

        Debug.Print .Status & " [Happy Days!]"

    Else
        Debug.Print .Status & " [Sad Days :-(]"
    End If

End With
Set oXMLHTTP = Nothing

End Sub
'''


“(“type”“:”“SP.Data.QATrackerListItem”“”
是否缺少右括号?…这不应该是请求正文的一部分吗?谢谢@TimWilliams。我添加了右括号,并试图将其包含在发送请求中。新错误是:“GetById方法中不存在参数\uu元数据”