我编写了一个宏,该宏从电子邮件正文中获取一些数据,然后将这些数据插入到SharePoint表中。 剪切电子邮件正文以及将数据插入SharePoint都可以正常工作-但是插入部分需要很长时间(每次执行大约需要2分钟)。
代码如下:
Public Const sDEMAND_ROLE_GUID As String = "{111111111-2222-3333-4444-111111111111}"
Public Const sSHAREPOINT_SITE As String = "https://randomsharepoint.com/sites/test/"
Sub insertIntoSharePoint()
Dim cn As ADODB.Connection
Dim sConn As String
Dim sSQL As String
sConn = "Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=0;RetrieveIds=Yes;" & _
"DATABASE=" & sSHAREPOINT_SITE & ";" & _
"List=" & sDEMAND_ROLE_GUID & ";"
Set cn = New ADODB.Connection
sSQL = "INSERT INTO [TEST TABLE]([Test1], [Test2], [Test3], [Test4], [Test5], [Test6], [Test7], [Test8], [Test9], [Test10], [Test11])" & _
"VALUES ('TestVal1', 'TestVal2','TestVal3','TestVal4','TestVal5','TestVal6','TestVal7','TestVal8','TestVal9','TestVal10','TestVal11');"
With cn
.ConnectionString = sConn
.Open
.Execute sSQL 'This is the line that takes most of the runtime'
.Close
End With
Set cn = Nothing
MsgBox "Item successfully added to SharePoint"
End Sub
有什么方法可以优化此代码? 还是执行缓慢仅取决于Internet连接/弱计算机? 还是您有其他解决方案来解决主要问题? (废弃电子邮件正文并将其插入到SharePoint列表中)
答案 0 :(得分:1)
嗯,VBA本质上很慢。也许您可以将所有内容从Outlook导入到Access / Excel,然后从Access / Excel中获取SharePoint数据。
在您要添加基于电子表格的列表的网站上,转到“设置Office 365设置”按钮,然后单击“添加应用”。
在“查找应用程序”字段中,键入电子表格,然后单击“搜索”图标“搜索框”放大镜图标。 查找输入了电子表格并突出显示搜索按钮的应用程序字段
在搜索结果页面中,单击“导入电子表格”。 导入在“新应用”对话框中突出显示的电子表格应用
在“新应用”页面中,为列表键入名称。
在大多数视图中,该名称显示在列表顶部,成为列表页面网址的一部分,并出现在网站导航中以帮助用户查找列表。您可以更改列表的名称,但是网址将保持不变。 填写名称和文件位置的新应用对话框,突出显示导入
键入可选的说明。
在大多数视图中,描述都显示在名称的下方。您可以随时使用列表设置更改列表的说明。
浏览至或键入电子表格的文件位置。完成后,点击导入。
电子表格将在Excel中打开,您将看到“导入到Windows SharePoint Services列表”窗口。
在“导入到Windows SharePoint Services列表”窗口中,选择“表范围”,“单元格范围”或“命名范围”。如果要手动选择范围,请选择“单元格范围”,然后单击“选择范围”。在电子表格中,单击左上方的单元格,按住Shift键,然后选择所需范围的右下方单元格。 突出显示范围的Excel电子表格
该范围将出现在“选择范围”字段中。单击导入。 突出显示“导入到电子表格”对话框
导入电子表格后,请检查列表中的列,以确保数据已按预期导入。例如,您可能要指定一列包含货币而不是数字。要查看或更改列表设置,请打开列表,单击“列表”选项卡或单击“设置Office 365设置”按钮,然后单击“列表设置”。
电子表格数据将显示在SharePoint的列表中。 在SharePoint Online中列出
有关更多信息,请参见下面的链接。
http://3sharp.com/blog/load-excel-data-into-a-sharepoint-2013-list-fast-and-easy/
https://technet.microsoft.com/en-us/library/2008.04.access.aspx