以编程方式将Excel命名范围发布到SharePoint

时间:2013-05-10 10:17:56

标签: excel sharepoint

我有一个excel文件,其中包含保存在SharePoint文档库中的命名范围。我创建了一些excel Web访问Web部件,以显示我拥有的excel文件。我的问题是我似乎无法找到一种方法来发布我的excel文件,以便只显示命名的范围。

我知道这可以通过在将其保存到SharePoint时设置浏览器视图选项来手动完成,但我需要通过代码来完成,因为我需要在多个SharePoint网站上运行它。

我正在检查Visio服务并看到它有ServerPublishOptions我想知道Excel服务是否有类似我可以使用的东西。我也在查看excel互操作的PublishObjects,但我不确定它是否能解决我的问题。

1 个答案:

答案 0 :(得分:0)

此代码选择一个范围并使用ADO插入到sharepoint列表中,对我来说这是一种简单的方法。

Public Const strSharePointInfo = "Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=0;RetrieveIds=Yes;DATABASE=http://sharepoint.server.com/Path/;LIST={12312456-124A-78BC-B8E7-1E526B74A015};"

Sub InsertRecordSetOnSharePoint(Rg as Range,ShtName as String)
'Bruno Leite
'http://officevb.com

Dim cn As ADODB.Connection 'Conexao para a Lista do SharePoint
Dim i As Integer,SQL as string


'sql to insert
SQL = "INSERT INTO [LISTNAME] (SELECT * FROM [Excel 12.0;DATABASE=" & ShtName & "].["& rg.name &"$])"

'open connection
cn.Open strSharePointInfo

'run SQL
cn.Execute SQL

Set cn = Nothing

Debug.Print "Insert OK"

End Sub