В SharePoint я вручную создал список и дал одному из столбцов заголовок «Дата импл.», Чтобы он соответствовал заголовку на листе Excel, из которого будет заполняться список.
В SharePoint это выглядит так:
![SharePoint header](https://i.stack.imgur.com/faBQm.png)
когда я смотрю на имя поля для набора записей, "." заменяется на «#», как показано здесь:
![rst name](https://i.stack.imgur.com/vTUDg.png)
Часть кода, где я заменяю существующую таблицу SharePoint, выглядит следующим образом, и ошибка возникает во время 5-й итерации цикла nCounter. Это когда Headers (nCounter) = "Impl. Date".
Set cnt = New ADODB.Connection
Set rst = New ADODB.Recordset
With cnt
.ConnectionString = _
"Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=0;RetrieveIds=Yes;DATABASE=http://my.company.com/SubSite/;LIST=" & GUID(Foldername) & ";"
.Open
End With
'set SQL string to filter the list to match what is to be done.
mySQL = "DELETE * FROM [" & SharepointListName & "];"
'activate SQL command
cnt.Execute mySQL, , adCmdText
mySQL = "SELECT * FROM [" & SharepointListName & "];"
rst.Open mySQL, cnt, adOpenDynamic, adLockOptimistic
For lCounter = Headerrow + 1 To LastRow
rst.AddNew
For nCounter = 1 To LastCol + 1
rst.Fields(Headers(nCounter)) = Sheets("Sheet1").Cells(lCounter, nCounter).Value
Next nCounter
' Select Case SharepointListName
' Case "NSP Index"
' rst.Fields("Region") = Sheets("Sheet1").Range("A" & lCounter).Text
' rst.Fields("NSP") = Sheets("Sheet1").Range("B" & lCounter).Text
' rst.Fields("Title") = Sheets("Sheet1").Range("C" & lconter).Text
' rst.Fields("Version") = Sheets("Sheet1").Range("D" & lconter).Text
' rst.Fields("Impl. Date") = Sheets("Sheet1").Range("E" & lconter).Text
' rst.Fields("Issue Date") = Sheets("Sheet1").Range("F" & lconter).Text
' rst.Fields("Link") = Sheets("Sheet1").Range("D" & lconter).Text
' Case "OPSD Index", "SSD Index", "MTOD Index"
'
' Case "OPSS Index", "SSP Index"
'
' End Select
' rst.Fields("FileLink") = filecaption & filelink
rst.Update
Next lCounter
Я получаю сообщение об ошибке:
![error box](https://i.stack.imgur.com/JFwOx.png)
прямо сейчас я предполагаю, что причина "Не удается найти элемент в коллекции, соответствующей запрошенному имени или порядковому номеру", вызвана # несоответствием.
Я ошибаюсь в своем предположении? Есть ли способ изменить имя поля SharePoint в соответствии с именем Excel? Другая методология, которую я должен использовать?