【发布时间】:2013-07-04 10:12:32
【问题描述】:
标题说明了一切。我正在尝试编写一个 VBA 脚本,它允许我在 Access 中运行,它将所有数据库表作为单独的工作表导出到与数据库同名的 Excel 文件中:
Sub exportTablesToXLS()
Dim td As DAO.TableDef, db As DAO.Database
Dim out_file As String
out_file = CurrentProject.Path & "\" & db.DatabaseName & ".xls"
Set db = CurrentDb()
For Each td In db.TableDefs
If Left(td.Name, 4) = "MSys" Then
'We do not need MSys tables in excel file
Else
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, _
td.Name, out_file, True, Replace(td.Name, "dbo_", "") 'We do not need dbo prefix in sheetnames
End If
Next
End Sub
我遇到的问题希望得到您的帮助:
- 参见行
out_file-> db.DatabaseName 返回错误。如何正确获取当前Access数据库的数据库名称? - 我也想输出一个日志文件(简单的文本文件)。如何读取每个数据库表的已导出行数并报告最终发生的错误?
非常感谢任何改进此脚本的帮助:-)
【问题讨论】: