C#获取excel表名、列名的问题

时间:2022-05-09 09:33:38

微软给出了获取表名、列名的方法:
System.Data.DataTable table = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

System.Data.DataTable tableColumns = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Columns, new object[] { null, null, TableName, null });

按照网上给出示例获取1.xls工作薄获得表名为'2013年1月$',还有 '2013年1月$'_'2013年1月$'Print_Area两个无效表名
获取列名出现F10、F11、F12……F23、F7、F8、F9奇怪列名(用excel打开看不到)

请教有没有什么方法可以获得有效表名和列名?

11 个解决方案

#2


引用 1 楼 happy09li 的回复:
http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢

#3


引用 2 楼 user2007001 的回复:
Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

#4


写的挺详细。。

#5


引用 3 楼 happy09li 的回复:
Quote: 引用 2 楼 user2007001 的回复:

Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示空白列

#6


引用 5 楼 user2007001 的回复:
Quote: 引用 3 楼 happy09li 的回复:

Quote: 引用 2 楼 user2007001 的回复:

Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示空白列
有没有办法只显示非空白列

#7


我写过一个吧Execle导入数据库的Demo工具,给你网址你去下载分析分析   http://pan.baidu.com/share/link?shareid=902685320&uk=2334434434

#8


引用 7 楼 Mingyueruya 的回复:
我写过一个吧Execle导入数据库的Demo工具,给你网址你去下载分析分析   http://pan.baidu.com/share/link?shareid=902685320&uk=2334434434

看完了,我还是没能问题“如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示非空白列”

#9


用 NPOI

#10


引用 9 楼 hegongda 的回复:
用 NPOI
可以说具体点不?我新手,谢谢

#11


没有人回复了 C#获取excel表名、列名的问题
问题还没有解决,第一行为数据时列名是列顶端的字母,通过列号Range.Column然后在另写一个int转string (A~Z;AA~ZZ)方法来实现?还是有方法直接获取?

#1


#2


引用 1 楼 happy09li 的回复:
http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢

#3


引用 2 楼 user2007001 的回复:
Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

#4


写的挺详细。。

#5


引用 3 楼 happy09li 的回复:
Quote: 引用 2 楼 user2007001 的回复:

Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示空白列

#6


引用 5 楼 user2007001 的回复:
Quote: 引用 3 楼 happy09li 的回复:

Quote: 引用 2 楼 user2007001 的回复:

Quote: 引用 1 楼 happy09li 的回复:

http://blog.csdn.net/happy09li/article/details/7431967

谢谢你的方法,(Excel.Worksheet)wb.Worksheets.get_Item(i)).Name;列举了表名,列名如何实现?请指点谢谢


你把Excel读出来不就有列名了   C#获取excel表名、列名的问题

如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示空白列
有没有办法只显示非空白列

#7


我写过一个吧Execle导入数据库的Demo工具,给你网址你去下载分析分析   http://pan.baidu.com/share/link?shareid=902685320&uk=2334434434

#8


引用 7 楼 Mingyueruya 的回复:
我写过一个吧Execle导入数据库的Demo工具,给你网址你去下载分析分析   http://pan.baidu.com/share/link?shareid=902685320&uk=2334434434

看完了,我还是没能问题“如果第一行是数据而不是列名,怎么解决呢?另外表格中有几列空白列也被列举出来了,有没有办法只显示非空白列”

#9


用 NPOI

#10


引用 9 楼 hegongda 的回复:
用 NPOI
可以说具体点不?我新手,谢谢

#11


没有人回复了 C#获取excel表名、列名的问题
问题还没有解决,第一行为数据时列名是列顶端的字母,通过列号Range.Column然后在另写一个int转string (A~Z;AA~ZZ)方法来实现?还是有方法直接获取?