Я создаю инструмент в VBA, который работает с данными Sharepoint. Я не знаю, как подходить к спискам, хотя. Я хочу иметь возможность использовать URL-адрес списка для макроса, чтобы загрузить список в виде таблицы (как в веб-запросе .iqy).
Я нашел более ранний пост об этом, но в target-c:
Sharepoint: GetList listName, возвращающий весь список
но я не знаю, как это сделать в VBA. Я надеялся, что это можно сделать без особого языка разметки. Возможно, отправка запроса на сайт sharepoint и получение параметра (с помощью WinHttp.WinHttpRequest).
Эта функция будет использовать приведенный ниже код. Из URL я мог бы извлечь сервер и ViewGUID, но, к сожалению, не ListName.
Sub ImportSharePointList()
Dim objMyList As ListObject
Dim objWksheet As Worksheet
Dim strSPServer As String
Const SERVER As String = "mysite:8003/sites/the-sharepoint-thing/"
Const LISTNAME As String = "{D1F1C2ED-81BA-41CC-A698-XXXXXXXXXXXX}"
Const VIEWNAME As String = "{27C9CA20-3293-4BD5-9271-XXXXXXXXXXXX}"
' The SharePoint server URL pointing to
' the SharePoint list to import into Excel.
strSPServer = "http://" & SERVER & "/_vti_bin"
' Add a new worksheet to the active workbook.
Set objWksheet = Worksheets.Add
' 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, , Range("A1"))
End Sub