Как объединить несколько таблиц данных в один? - PullRequest
1 голос
/ 11 февраля 2009

У меня есть несколько файлов Excel, которые я открываю как датируемые Я хочу объединить все эти таблицы данных в DataTable в .net.

например, 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

Как это создать.

1 Ответ

1 голос
/ 11 февраля 2009

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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...