'将你的一个表转存为 .xls添加 Command1 Option Explicit Dim vbexcel11 As Object Dim vbbook As Object Dim Xlsnm$, acOutputTable, Starttm&, acApp Private Sub Command1_Click() On Error GoTo errhandler Xlsnm = "c:\aaa.xls" '要转换的Xls路径与名称 If Dir(Xlsnm) <> "" Then Kill Xlsnm Call MDB2Excel("c:\bwscale.mdb", "bwcust", Xlsnm) '要转换的库名与表名 Starttm = Timer Do If Dir(Xlsnm) <> "" Then Exit Do Loop Until Timer > Starttm + 5 If Dir(Xlsnm) <> "" Then MsgBox "转换完成" Set vbexcel11 = CreateObject("Excel.Application") '创建excel对象 vbexcel11.Visible = True '对象可见 Set vbbook = vbexcel11.Workbooks.Open(Xlsnm) '打开文件 End If errhandler: If Err > 0 Then MsgBox "没安装 Excel,文档被占用或其它原因" End Sub Public Sub MDB2Excel(Mdbnm As String, MdbTable As String, Excelnm As String) On Error Resume Next Set acApp = GetObject(Mdbnm, "Access.Application") acApp.DoCmd.OutputTo acOutputTable, MdbTable, "Microsoft Excel (*.xls)", Excelnm acApp.CloseCurrentDatabase Set acApp = Nothing End Sub
Dim vbexcel11 As Object
Dim vbbook As Object
Dim Xlsnm$, acOutputTable, Starttm&, acApp
Private Sub Command1_Click()
On Error GoTo errhandler
Xlsnm = "c:\aaa.xls" '要转换的Xls路径与名称
If Dir(Xlsnm) <> "" Then Kill Xlsnm
Call MDB2Excel("c:\bwscale.mdb", "bwcust", Xlsnm) '要转换的库名与表名
Starttm = Timer
Do
If Dir(Xlsnm) <> "" Then Exit Do
Loop Until Timer > Starttm + 5
If Dir(Xlsnm) <> "" Then
MsgBox "转换完成"
Set vbexcel11 = CreateObject("Excel.Application") '创建excel对象
vbexcel11.Visible = True '对象可见
Set vbbook = vbexcel11.Workbooks.Open(Xlsnm) '打开文件
End If
errhandler:
If Err > 0 Then MsgBox "没安装 Excel,文档被占用或其它原因"
End Sub Public Sub MDB2Excel(Mdbnm As String, MdbTable As String, Excelnm As String)
On Error Resume Next
Set acApp = GetObject(Mdbnm, "Access.Application")
acApp.DoCmd.OutputTo acOutputTable, MdbTable, "Microsoft Excel (*.xls)", Excelnm
acApp.CloseCurrentDatabase
Set acApp = Nothing
End Sub
写到一个二维数组strTemp()中
再用下面的语句把数组中的值写进EXCEL中
objExl.Range("A4").Resize(lngN, 8).Value = strTemp()具体做法可以去这里看
http://blog.csdn.net/xayzmb/archive/2008/03/25/2216587.aspx