OleDbAdapter SelectCommand Excel c#

时间:2012-04-09 10:53:51

标签: c# excel oledbcommand oledbdataadapter

我想查询Excel文件中唯一一张纸上的数据。

 MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$] ", MyConnection); 

此行查询Sheet1中的数据。问题是我不知道输入文件中表单的名称是什么。有没有办法可以编写命令字符串,这样无论名称是什么,它都可以访问工作表。

1 个答案:

答案 0 :(得分:1)

如果您总是在工作簿中只有一张工作表,那么您可以先获取工作表名称然后将其放入查询中来执行此操作:

DataTable dt = MyConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
string sheetName = dt.Rows[0]["TABLE_NAME"].ToString();

如果您有多张工作表,则会返回按字母顺序排列的第一张工作表。