【问题标题】:How to merge multiple datatables into one?如何将多个数据表合并为一个?
【发布时间】:2010-10-06 20:21:28
【问题描述】:

我有多个作为数据表打开的 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

如何创建它。

【问题讨论】:

    标签: .net database datatable


    【解决方案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)
    

    【讨论】:

      猜你喜欢
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 2013-05-16
      • 1970-01-01
      • 2011-11-18
      • 2014-05-15
      • 1970-01-01
      • 2021-06-02
      相关资源
      最近更新 更多