用查询批量导入EXCEL 时,获取EXCEL 表sheet名称

用查询的方式,批量导入EXCEL 到“库”时,通常会需要获取到EXCEL 表名。
DataTable shtNamTab = Oconn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);

用   GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null) 来获取   表 名  的集合;

DataTable shtNamTab = Oconn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);

 

 1             openFileDialog1.Title = "打开上报表";
 2             openFileDialog1.FileName = "";
 3             openFileDialog1.Filter = "ExcelFile|*.xlsx";
 4             if (openFileDialog1.ShowDialog() == DialogResult.OK)
 5             {
 6                 string ExPath = openFileDialog1.FileName;
 7                 string ExConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + ExPath + ";Extended Properties='Excel 12.0; HDR=Yes; IMEX=1'";
 8                 OleDbConnection Oconn = new OleDbConnection(ExConn);
 9                 Oconn.Open();
10               DataTable shtNam = Oconn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
11               string shtTbNam = shtNam.Rows[0]["Table_Name"].ToString();
12               //MessageBox.Show(shtTbNam);
13                 this.dataGridView1.DataSource = shtNam;
14                 Oconn.Close();
15             }

 

posted @ 2022-06-03 23:36  橙香夜雨  阅读(278)  评论(0编辑  收藏  举报