使用不排序的Getschema方法获取excel表格名称

本文关键字:excel 获取 表格 方法 Getschema 排序 | 更新日期: 2023-09-27 18:09:55

我从excel表插入数据到Sql表。oledbConnection.GetSchema("Table_Name")按排序顺序获得excel工作表名称。我不想对它们进行排序因为我想要得到第一个表以便对它进行一些操作。下面是我的代码片段:

string con = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excel +";Extended Properties='"Excel 12.0;HDR=Yes;IMEX=2'"";
            OleDbConnection cn = new OleDbConnection(con);
            cn.Open();
            DataTable sheetTable = cn.GetSchema("Tables");
            string strSHeetName = Convert.ToString(sheetTable.Rows[0]["TABLE_NAME"]);

使用不排序的Getschema方法获取excel表格名称

试试这段代码,这对我有用…

Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook excelBook = xlApp.Workbooks.Open(filePath); 
string[] excelSheets = new string[excelBook.Worksheets.Count];
int i = 0;
foreach(Microsoft.Office.Interop.Excel.Worksheet wSheet in excelBook.Worksheets)    
{
  excelSheets[i] = wSheet.Name;
  i++;
}

*将"filePath"替换为您的文件位置路径…