WinForm读取Excel

WinForm读取Excel
WinForm读取Excel

在 WinForm中打开Excel

托一个 openFileDialog(openFileDialogSource)和 toolStrip 和ComboBox(ctlPath) 控件

代码:

DataTable dTable;

// 打开

private void buttonOpen_Click(object sender, EventArgs e)

{

if (openFileDialogSource.ShowDialog()==DialogResult.OK)

{

ctlPath.Text = openFileDialogSource.FileName;

ExceltoDataSet(ctlPath.Text);

}

}

//打开方法

public DataTable ExceltoDataSet(string path)

{

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+ path + ";Extended

Properties='Excel 8.0;HDR=Yes;IMEX=1';";

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();

string strExcel = "";

OleDbDataAdapter myCommand = null;

DataSet ds = null;

strExcel = "Select * From [" + tableName + "]";

myCommand = new OleDbDataAdapter(strExcel, strConn);

ds = new DataSet();

myCommand.Fill(ds, tableName);

System.Data.DataTable dt = ds.Tables[0];

dTable = dt;

return dt;

}

// 生成(刷新)

private void tsbRefresh_Click(object sender, EventArgs e)

{

if (string.IsNullOrEmpty(ctlPath.Text))

{

ctlPath.Focus();

return;

}

try

{

for (int i = 7; i >= 0; i--)

{

dTable.Rows.Remove(dTable.Rows[i]);

}

gridSource.DataSource = dTable;// gridSource :( DataGridView) }

catch (Exception)

{

throw;

}

}

相关主题
相关文档
最新文档