【发布时间】:2014-05-29 21:33:00
【问题描述】:
我正在尝试使用 Visual Basic 从存储在 Sharepoint 服务器上的 excel xlsx 文件中读取/写入数据
我搜索了很多,但没有找到任何与连接 remote 位置 xlsx 文件相关的解决方案
这是我的简单代码
Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click
Dim cn As System.Data.OleDb.OleDbConnection
Dim cmd As System.Data.OleDb.OleDbDataAdapter
Dim DataSet1 As New DataSet
Dim filePath As String = "http://bhinderblink.com/Test.xlsx"
cn = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & filePath & "'; Extended Properties=""Excel 12.0 Xml;HDR=YES"";")
' Select the data from Sheet1 of the workbook.
cmd = New System.Data.OleDb.OleDbDataAdapter("select * from [Bhinder$]", cn)
cn.Open()
cmd.Fill(DataSet1)
DataGridView1.DataSource = DataSet1.Tables(0)
cn.Close()
End Sub
我遇到了这个错误
谢谢
更多信息:我正在使用的 VB 应用程序不在 SharePoint 服务器上,它在我的计算机上,我有权读写更新 SharePoint excel 文件内容。
【问题讨论】:
-
为什么不先把文件下载到临时目录,然后再读取呢?
-
@T.S.谢谢您的回复。在我的项目中,我需要阅读内容并编辑它们并将它们保存回来。而且我没有上传权限。我可以在EXCEL中直接从服务器打开xlsx文件,编辑内容并直接保存回服务器。我在这个问题中提供的 xlsx 文件仅用于测试目的。
-
你提到了网络。我不知道您打算如何通过网络打开文件。据我了解,如果文件在远程服务器上并通过 Web 服务器提供给您,您所能做的就是下载文件、更改文件并上传。如果文件在服务器上,从您的机器上可以看到,您可以使用
\\server\folder\file.xlsx处理该文件。在您的示例中,您通过http协议,我不相信它会起作用。 -
您好 T.S,抱歉回复晚了。在实时环境中,此 excel 文件位于 Sharepoint 中。我可以直接打开它,编辑它并将其从 Microsoft excel 保存回服务器,但 dnt 有权将任何文件上传到共享点。在我的示例中,我在常规托管服务器上上传了一个测试 excel 文件进行测试。
-
Sharepoint 是一个网络服务器。因此,这意味着 Excel 具有与 sharepoint 的一些内置集成。当您通过 excel 使用 sharepoint 时,它很可能会将文件下载到 Internet 沙箱并从那里打开,然后将其上传回来。你没有提到共享点。否则你的问题已经回答stackoverflow.com/questions/14496608/…
标签: vb.net excel sharepoint