Ответить на опрос SharePoint через VBA

659
wizlog

Как я могу отвечать на опросы SharePoint через VBA? Я пытаюсь отследить использование рабочей книги с помощью макроса, но я не могу понять, как это сделать, или даже правильно подобрать условия для поиска.

Любые указатели в правильном направлении будут полезны.

Изменить: можно ли использовать powershell для создания списка на SharePoint через VBA?

4
@PimpJuiceIT Да, я пытаюсь отслеживать использование моей книги. Я мог бы использовать резервную SP SP DB, но я понятия не имею, где это находится или есть ли у меня доступ. Мне не нужны другие люди, чтобы увидеть использование (я просто пытаюсь получить значения нескольких ячеек на листе в любом формате), поэтому я предполагаю, что не будет никакой необходимости в сотрудничестве, но рабочая книга будет размещен на SP. wizlog 6 лет назад 0
Я имел в виду внутренние БД, но я недостаточно знаком со структурой, чтобы знать, где искать, но это была просто идея. Книга может быть просто частью базы данных контента, но я не уверен, но если бы существовала таблица SQL базы данных, в которой отслеживалась какая-либо коррелированная статистика и т. Д., То, возможно, простой запрос SQL предоставил бы вам необходимые детали. Pimp Juice IT 6 лет назад 0
Мой комментарий к @TechLoard дополнительно разъясняет, что я пытаюсь сделать. wizlog 6 лет назад 0

1 ответ на вопрос

0
TechLord

Изменить: можно ли использовать powershell для создания списка на SharePoint через VBA?

Не специально используя Powershell, но этот ответ пытается ответить на вопрос:
Как создать список на SharePoint через VBA .

(1) Не уверен из вопроса относительно того, что именно вы пытаетесь выполнить, но, похоже, это наиболее подходящий фрагмент кода, чтобы взять материал из Excel и затем записать его в список sharepoint :

Ниже приводятся выдержки из ссылки:
Оригинальный вопрос (здесь вставлены только соответствующие части):

У меня есть отчет по автоматизации, который пользователи используют для создания отчета о клиентах, и я хочу увидеть, кто на самом деле его использует и какие параметры они используют. Я думал, что если я создам скрытый список на сайте sharepoint, и в конце макроса Excel я могу взять параметры с главной страницы Excel и записать его в список sharepoint.

Это ответ, который может работать (Опубликовано на этот вопрос выше):

Sub UpdateSpecificCells()  'If nobody has the file checked out If Workbooks.CanCheckOut("http://excel-pc:43231/Shared Documents/ExcelList.xlsb") = True Then Application.DisplayAlerts = False  'Open the file on the SharePoint server Workbooks.Open Filename:="http://excel-pc:43231/Shared Documents/ExcelList.xlsb", UpdateLinks:=xlUpdateLinksNever   ActiveSheet.Cells(2, 7).Value = 100 ActiveSheet.Cells(3, 7).Value = 200 ActiveSheet.Cells(4, 7).Value = 300   'Close the workbook Workbooks("ExcelList.xlsb").Save Workbooks("ExcelList.xlsb").Close  End If End Sub 

Другой фрагмент как Ответ на тот же вопрос :

Это обновляет список Sharepoint через ListObject опубликует метод

Public Sub PublishList() ' Get the collection of lists for the active sheet Dim L As ListObjects Set L = ActiveSheet.ListObjects ' Add a new list Dim NewList As ListObject Set NewList = L.Add(xlSrcRange, Range("A1:G8"),, True) NewList.Name = "PartsList" ' Publish it to a SharePoint site NewList.Publish Array("http://sharepointportal.xxx.com/personal/xxx/_layouts/viewlsts.aspx?BaseType=0", _ "NewLists "), True End Sub 

Ссылка на оригинальный контент здесь .

Следующие две ссылки могут быть полезны:
(2) Как добавить элементы в список Sharepoint с помощью Excel VBA?

Вставить соответствующую часть из принятого ответа там:

Все манипуляции с данными могут выполняться через веб-службу списков SharePoint с именем lists.asmx. Вы должны позвонить в эту веб-службу. Например, метод UpdateListItems должен делать то, что сейчас делает MS Access.

Одним из вариантов, который вы можете использовать для доступа к веб-сервису списков, является «Microsoft SOAP Toolkit», который должен быть установлен как офисный компонент (никогда этого не делал, но вот статья, описывающая его: http://oreilly.com/pub/h / 1306

Другой вариант - использовать библиотеку MSXML (которая всегда доступна) и отправлять запросы SOAP в виде простых HTTP-запросов. Затем анализирует результаты как XML. Есть статья, показывающая примеры, как это сделать: http://blogs.msdn.com/b/jpsanders/archive/2007/06/14/how-to-send-soap-call-using-msxml-replace-stk .aspx

(3) код VBA для вставки записей в список базы данных Sharepoint

Не вставляйте какой-либо контент по этой ссылке, так как не знаете из вашего вопроса, будет ли это особенно актуально для вашей ситуации или нет. Пожалуйста, нажмите на гиперссылку, чтобы проверить ...

Две другие ссылки, которые я хотел бы, чтобы вы любезно прошли:

(4) Обновите данные в существующем списке SharePoint с помощью VBA.
Ну, это не точное название этого вопроса, но, похоже, это фактический вопрос, заданный там. Это может быть полезно для вас.

(5) Обновление списка Sharepoint новыми значениями из листа Excel (с использованием VBA).
Пожалуйста, посмотрите также на ответы на этот вопрос ...

Я полагаю, что только если вы сможете дать подробное разъяснение относительно того, что именно вы намереваетесь выполнить, только тогда мы сможем помочь вам в дальнейшем ...

Techlord, спасибо за ответ. Я пытаюсь отслеживать использование рабочей книги (я пояснил немного в комментарии к моему вопросу). В следующей части 1 несколько человек будут использовать (копировать) мою книгу одновременно - ни один из списков не может быть надежно извлечен. В ответ на (2) я получаю сообщение об ошибке «Не удается подключиться к серверу в данный момент. Ваша таблица не может быть опубликована» в строке NewList.Publish. Нужно ли импортировать `lists.asmx` в качестве ссылки? это не доступно для меня. Примечание: я скопировал веб-адрес со страницы настроек списка информации. Примечание: я подключен к SP. wizlog 6 лет назад 0

Похожие вопросы