请各位vb.net大神来帮帮忙~ 我写了一个程序,想用vb.net编个软件能够读出电脑的Excel~

程序参考别人的写出了一部分,但是只能读特定的一个Excel,希望有高手帮我改一下添加个“打开”选项,让我可以读电脑里任意一个Excel!程序如下,万分感谢!PublicC... 程序参考别人的写出了一部分,但是只能读特定的一个Excel,希望有高手帮我改一下添加个“打开”选项,让我可以读电脑里任意一个Excel!程序如下,万分感谢!
Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim connstr As String= "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:\MyExcel.xls;Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"
Dim sql As String = "select * from [sheet1$]"
Dim adapter As New OleDb.OleDbDataAdapter(sql, connstr)
Dim dataset As New DataSet
adapter.Fill(dataset)
Me.DataGridView1.DataSource = dataset.Tables(0)

End Sub
End Class
展开
 我来答
zzx0010
2012-03-30
知道答主
回答量:18
采纳率:0%
帮助的人:15.4万
展开全部
关键在在这一句:
String= "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:\MyExcel.xls;Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"
你把里面的地址改成动态读取也就是了,下面是个例子
Dim nofd As New OpenFileDialog
Dim xlsname As String = ""
nofd.Filter = "Excel文件|*.xls"
If nofd.ShowDialog = Windows.Forms.DialogResult.OK Then
xlsname = nofd.FileName
'如果想打开多个文件,就设置 nofd.Multiselect = True
'然后通过循环 nofd.FileNames 来读取
'最后是你自己的处理代码
String= "Provider=Microsoft.ACE.OLEDB.12.0;DataSource="& xlsname &";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"
'== 其它代码
Else
Exit Sub
End If
范永熙喆
2012-03-28 · 超过49用户采纳过TA的回答
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:142万
展开全部
你需要获取文件详细地址的控件。然后通过这个控件获取你想要打开的excel的地址,将其替换掉你现在的C:\MyExcel.xls
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qiaqia86
高粉答主

2012-03-28 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:15.5万
采纳率:65%
帮助的人:2.1亿
展开全部
洗洗睡
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式