北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
一直比较习惯用SQL命令,在网上找到一贴使用SQL命令导出EXCEL代码来使用
http://www.accessoft.com/article-show.asp?id=7034
Select * INTO [EXCEL 12.0 XML;DATABASE=E:\temp\text.xlsx].sheet1 FROM Sheet2
导出时可以顺利使用,但想对【temp】文件夹删掉操作时,发提示文件夹被占用,无法删除。后来发现关闭ACCESS后,才可以删除【temp】文件夹。
调用的过程如下
------------------------------------------------------------------------------------------------------------------------------------------------
Sub ExportExcel_xlsx(strFileName As String, strSQL As String)
Dim strSQL0 As String
Dim strFilePath As String
Dim strFullFileName As String
Dim strFullFileName1 As String
DoCmd.SetWarnings False
On Error GoTo Err_ExportToExcel
'获得保存信息
With Application.FileDialog(msoFileDialogSaveAs)
.InitialFileName = strFileName
If Not .Show Then Exit Sub
strFileName = .SelectedItems(1)
End With
strFilePath = Left(strFileName, InStrRev(strFileName, "\")) '获得路径
strFullFileName = Mid(strFileName, InStrRev(strFileName, "\") + 1) '获得文件名(含扩展名)
'strFullFileName1 = Left(strFullFileName, InStrRev(strFullFileName, ".") - 1) '获得文件名
'如果EXCEL文件已存在,则先删除
If Dir(strFileName) <> "" Then Kill strFileName
'建立(保存)文件
strSQL0 = "Select * INTO [EXCEL 12.0 XML;DATABASE="
strSQL0 = strSQL0 & strFilePath
strSQL0 = strSQL0 & strFullFileName
strSQL0 = strSQL0 & "].Sheet1 FROM (" & strSQL
strSQL0 = strSQL0 & ") AS A"
DoCmd.RunSQL strSQL0
'打开确认
If MsgBox("Export Success,Open it?", vbYesNo + vbInformation) = vbNo Then
Exit Sub
Else
'打开EXCEL文件
Shell "Excel.exe " & Chr(34) & strFilePath & strFullFileName & Chr(34), 3
End If
'错误跳出
Exit_ExportToExcel:
On Error Resume Next
DoCmd.Hourglass False
Exit Sub
Err_ExportToExcel:
If Err = 70 Then
MsgBox "Can't Export '" & strFileName & "', The file may be opened or without permission. ", vbCritical
Else
MsgBox Err.Number & " " & Err.Description, vbCritical
End If
Resume Exit_ExportToExcel
Exit Sub
End Sub
-------------------------------------------------------------------------------------------------------------------------------------------------
求高手指点一二,其他的导出方法也用过,但感觉还是这个比较顺手。