各位大侠:C# 如何读取Excel的第一张表的表名?

要写这么一个函数,传入xls文件的的路径,传出第一张表的表名。Excel中可能有好几张表,但只返回第一张表的表名。请问各位大侠这个怎么写。。。P.S.:不用Microso... 要写这么一个函数,传入xls文件的的路径,传出第一张表的表名。
Excel中可能有好几张表,但只返回第一张表的表名。请问各位大侠这个怎么写。。。
P.S.:不用 Microsoft.Office.Interop.Excel,把Excel当做一个数据库来操作。
展开
 我来答
wangzhiqing999
2011-02-18 · TA获得超过1.6万个赞
知道大有可为答主
回答量:7048
采纳率:100%
帮助的人:3316万
展开全部
从别的地方复制粘贴过来的,仅供参考。

cn = New ADODB.Connection
str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Me.ofdSelectExcel.FileName & ";Extended Properties=""Excel 8.0;HDR=Yes"""
cn.Open(str)
'获取所有SHEET的名称
cbSheet.Properties.Items.Clear()
Dim rs1 As New ADODB.Recordset
rs1 = cn.OpenSchema(ADODB.SchemaEnum.adSchemaTables)
While Not rs1.EOF
cbSheet.Properties.Items.Add(rs1.Fields("TABLE_NAME").Value)
rs1.MoveNext()
End While
cn.Close()

////上面是获取选中EXCEL的SHEET名称

看语法应该是 VB.NET 的语法。
关键的语句,应该就是那句
cn.OpenSchema(ADODB.SchemaEnum.adSchemaTables)

rs1.Fields("TABLE_NAME").Value
手机用户90095
2011-02-19 · TA获得超过221个赞
知道答主
回答量:231
采纳率:0%
帮助的人:171万
展开全部
ret[i, j+1] = dt.Rows[j][i];
前边为什么j+1? 后边为什么[j][i]?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式