创建MDB文件项目,添加引用-COM Microsoft Access x.0 Object LibraryAccess.Application a = new Access.ApplicationClass(); a.NewCurrentDatabase("E:\\temp.mdb"); a.Quit(Access.AcQuitOption.acQuitSaveAll);
Public Sub CreateExcel(ByVal _strExcelPath As String, ByVal _ExcelDataSet As DataSet, ByVal _strColumnName As String) Dim xlSheet As Excel.Worksheet Dim xlBook As Excel.Workbook Dim xlDBTable As Excel.DataTable Dim strPath As String Try 'エヲタ橫ミヨオイサヘャ」ャオシネ・XCELホトシホハフ・ 'ームオレカチミオトヨオキナオスハラ鰒ミ Dim arry As ArrayList arry = New ArrayList Dim dr As DataRow Dim i As Integer = 0 Dim strAll As String 'クンオレカチミキヨソェノ嵭ノホトシ 'ユメオスオレカチミイサヘャオトヨオキナオスハラ鰒ミ 'モナサッ Dim dv As DataView dv = New DataView(_ExcelDataSet.Tables(0)) 'ハラマネスミナナミ・ dv.Sort = _strColumnName Dim tmp As String Dim drv As DataRowView For Each drv In dv If tmp <> drv.Row(_strColumnName) Then tmp = Convert.ToString(drv.Row(_strColumnName)) arry.Add(tmp) End If Next Dim k As Integer = 0 For k = 0 To arry.Count - 1 Dim xlApp As New Excel.Application xlBook = xlApp.Workbooks.Add xlSheet = xlBook.Worksheets("sheet1") 'ヘィケヤレハラ鮠葭ュサキ」ャハ莎サヘャヨオオトXLSホトシ 'ヨクカィミツツキセカ strPath = _strExcelPath & "\" & k + 1 & ".xls" Dim col As DataColumn Dim colIndex As Integer = 0 For Each col In _ExcelDataSet.Tables(0).Columns colIndex = colIndex + 1 'オテオステソチミオトア・・ xlApp.Cells(1, colIndex) = col.ColumnName Next Dim row As DataRow Dim rowIndex As Integer = 0 'ヘィケムュサキネ。ヨオ」ャクウヨオ For Each row In _ExcelDataSet.Tables(0).Select(_strColumnName & "='" & Convert.ToString(arry(k)) & "'") 'クウウオ rowIndex = rowIndex + 1 colIndex = 0 For Each col In _ExcelDataSet.Tables(0).Columns colIndex = colIndex + 1 xlApp.Cells(rowIndex, colIndex) = row(col.ColumnName) Next Next xlBook.SaveAs(strPath, xlApp.ActiveWorkbook.FileFormat, "", "", xlApp.ActiveWorkbook.ReadOnlyRecommended, xlApp.ActiveWorkbook.CreateBackup, Excel.XlSaveAsAccessMode.xlShared.xlShared, xlApp.ActiveWorkbook.ConflictResolution, False, "", "") 'ハヘキナ xlBook.Close() xlApp.Quit() xlApp = Nothing Next Catch ex As Exception MsgBox(ex.Message) End Try End Sub这是前几天我用到的。是用VB.NET写的。参数是,路径,DATASET,根据列值分开生成EXCEL文件的列名,你修改一下就可以了。 根据列值生成不同的文件是业务需要,改一下就行了。原来用中文后来改为日文字体乱了。呵论坛里搜excel挺多介绍的
看ms的文章:
http://support.microsoft.com/kb/317881/EN-US/
Microsoft Access x.0 Object LibraryAccess.Application a = new Access.ApplicationClass();
a.NewCurrentDatabase("E:\\temp.mdb");
a.Quit(Access.AcQuitOption.acQuitSaveAll);
Dim xlSheet As Excel.Worksheet
Dim xlBook As Excel.Workbook
Dim xlDBTable As Excel.DataTable
Dim strPath As String Try
'エヲタ橫ミヨオイサヘャ」ャオシネ・XCELホトシホハフ・ 'ームオレカチミオトヨオキナオスハラ鰒ミ
Dim arry As ArrayList
arry = New ArrayList
Dim dr As DataRow
Dim i As Integer = 0
Dim strAll As String
'クンオレカチミキヨソェノ嵭ノホトシ
'ユメオスオレカチミイサヘャオトヨオキナオスハラ鰒ミ
'モナサッ
Dim dv As DataView
dv = New DataView(_ExcelDataSet.Tables(0))
'ハラマネスミナナミ・
dv.Sort = _strColumnName
Dim tmp As String
Dim drv As DataRowView
For Each drv In dv
If tmp <> drv.Row(_strColumnName) Then
tmp = Convert.ToString(drv.Row(_strColumnName))
arry.Add(tmp)
End If
Next Dim k As Integer = 0
For k = 0 To arry.Count - 1
Dim xlApp As New Excel.Application
xlBook = xlApp.Workbooks.Add
xlSheet = xlBook.Worksheets("sheet1")
'ヘィケヤレハラ鮠葭ュサキ」ャハ莎サヘャヨオオトXLSホトシ
'ヨクカィミツツキセカ
strPath = _strExcelPath & "\" & k + 1 & ".xls"
Dim col As DataColumn
Dim colIndex As Integer = 0
For Each col In _ExcelDataSet.Tables(0).Columns
colIndex = colIndex + 1
'オテオステソチミオトア・・
xlApp.Cells(1, colIndex) = col.ColumnName
Next Dim row As DataRow
Dim rowIndex As Integer = 0
'ヘィケムュサキネ。ヨオ」ャクウヨオ
For Each row In _ExcelDataSet.Tables(0).Select(_strColumnName & "='" & Convert.ToString(arry(k)) & "'")
'クウウオ
rowIndex = rowIndex + 1
colIndex = 0
For Each col In _ExcelDataSet.Tables(0).Columns
colIndex = colIndex + 1
xlApp.Cells(rowIndex, colIndex) = row(col.ColumnName)
Next Next xlBook.SaveAs(strPath, xlApp.ActiveWorkbook.FileFormat, "", "", xlApp.ActiveWorkbook.ReadOnlyRecommended, xlApp.ActiveWorkbook.CreateBackup, Excel.XlSaveAsAccessMode.xlShared.xlShared, xlApp.ActiveWorkbook.ConflictResolution, False, "", "") 'ハヘキナ
xlBook.Close()
xlApp.Quit()
xlApp = Nothing
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub这是前几天我用到的。是用VB.NET写的。参数是,路径,DATASET,根据列值分开生成EXCEL文件的列名,你修改一下就可以了。
根据列值生成不同的文件是业务需要,改一下就行了。原来用中文后来改为日文字体乱了。呵论坛里搜excel挺多介绍的