如何将Excel导入到DataGridView中
为了工作对账的需要,尝试制作了一个对账的小程序,虽然最后没用上,但还是写点什么记录下来。这个程序是基于c# winform开发的,主要实现了讲Excel导入到DataGirdview中,并实现一些相应的查询。以下是Form的截图。
1、以下是“选择文件路径”按钮的代码,选择文件的路径将在tbxPath(textbox)中显示。
private void btnChose_Click(object sender, EventArgs e) { if (this.openFileDialog1.ShowDialog() == DialogResult.OK) { this.tbxPath.Text = this.openFileDialog1.FileName; } }
2、将Excel导入到DataGridView中。
public DataTable ExcelToDataTableBySql(string path, string sql) { string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1';";//path来自tbxPath(textbox) OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); System.Data.DataTable schematable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null); string tableName = schematable.Rows[0][2].ToString().Trim(); OleDbDataAdapter myCommand = null; DataSet ds = new DataSet(); string strExcel = string.Format("select * from [{0}$] where {1}", tbxWorkSheet.Text.ToString(),sql); //tbxWorkSheet是Excel中的工作簿,sql来自tbxsql(textbox) myCommand = new OleDbDataAdapter(strExcel, strConn); myCommand.Fill(ds, tbxWorkSheet.Text.ToString()); DataTable dt = ds.Tables[0]; return dt; }