通过ADO连接从Excel更新Sharepoint - 内部名称问题

时间:2018-06-13 19:20:03

标签: sql excel sharepoint ado

我需要更新一个具有Spaces字段名称的SharePoint表。字段名称称为Tracking log 不幸的是,已经创建了许多报告,不允许我使用不同的名称重新创建此列,因此我需要找到解决此特殊名称的解决方法。

许多博客指出我修改内部名称并检查创建时给出的名称,因此我检查了整个URL路径的列表设置菜单,并看到以下内容: https://sales.acs.com/SMS/_layouts/15/FldEdit.aspx?List=%7B686F9AF9%2DFB64%2D4AD9%2DA268%2D19A057C432DA%7D&Field=Tracking%5Fx0020%5Flog

下面是我放在一起的脚本,它对于名称中没有空格的任何其他字段运行完全正常,但不是专门针对此字段。

Dim sSQL As String
' Build the connection string
sConn = "Provider=Microsoft.ACE.OLEDB.12.0;WSS;RetrieveIds=Yes;" & "DATABASE=" & sSHAREPOINT_SITE & ";" & "LIST=" & sDEMAND_ROLE_GUID & ";Authentication=Default;"

Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

' Open the connection.
With cn
.ConnectionString = sConn
.Open
End With

ID = "12345"
fieldName = "Tracking_x0020_log" 'Display view is "Tracking log", I've tried also with Tracking%5Fx0020%5Flog without luck


FieldValue = "Test"

'sSQL = "SELECT * FROM EMEA_SALES WHERE (APA_number='" & Format(ID, "#") & "');"
sSQL = "UPDATE EMEA_SALES SET " & fieldName & " = '" & FieldValue & "' WHERE (APA_number='" & Format(ID, "#") & "');"

rs.Open sSQL, cn, adOpenDynamic, adLockOptimistic

cn.Close
Set cn = Nothing

End Sub

我得到的错误是:

  

没有给出一个或多个必需参数的值。

当我更改任何其他没有空格的字段名时,运行顺利。

任何线索将不胜感激。谢谢大家!

0 个答案:

没有答案