我有多个excel文件,我打开它作为数据表 我想在.net中合并所有这些数据表单个DataTable。
例如 Apr09.xls,May09.xls,Jun09.xls
所有数据如下
Apr09.xls
EMPCODE,PresentDays
0001 ,30
0002 ,21
May09.xls
EMPCODE,PresentDays
0001 ,25
0002 ,30
新数据表如下
EMPCODE,PresentDays
0001 ,30
0002 ,21
0001 ,25
0002 ,30
如何创建。
答案 0 :(得分:1)
Datatable.Merge可以按如下方式使用
For Each fileName As String In Directory.GetFiles("C:\\TEMP\\", "*.xls")
Dim connectionString As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=""Excel 8.0;HDR=NO;IMEX=1;""", fileName)
Dim adapter As New OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString)
Dim ds As New DataSet
adapter.Fill(ds, "anyNameHere")
Dim TempTable As DataTable
TempTable = ds.Tables.Item("anyNameHere")
table1.Merge(TempTable)
MsgBox(fileName)
Next
DataGridView1.DataSource = table1
MsgBox(table1.Rows.Count)