我试图在通过VBA的ACCESSDB如下:MSAccess - TransferDatabase - 文件锁定是否打开?
导出一个单一的表从当前数据库到一个新的数据库在同一目录中,通过查询/ TransferDatabase的。这似乎按预期工作。
Dim ws As Workspace Dim db_new as Database strPath = CurrentProject.Path & "\Backend_Database\" strDBFilename = strPath & Raw_Count_File.accdb" Set ws = DBEngine.Workspaces(0) Set db_new = ws.CreateDatabase(strDBFilename, dbLangGeneral) DoCmd.TransferDatabase acExport, "Microsoft Access", _ strDBFilename, acTable, "tmp_RawCountFile", "Raw_TblMatchedTB"
在上面使用(创建新文件)相同的功能,我试图旁边新ZIP文件在同一目录。结果是1K字节的ZIP文件(这是一个空的ZIP)。
如果我将创建ZIP文件的代码段拆分为单独的函数(即在另一个按钮下),则该函数按预期工作并创建正确的ZIP文件。
我的问题:
我猜新的DB文件,并随后被TransferDatabase的离开new_db文件开挂,交通不便的ZIP功能。我试图在ZIP函数之前设置各种对象=无,但结果相同。只有当我退出第一个功能并调用第二个功能时,它才能按需要工作。
我可以在TransferDatabase函数的末尾添加一些内容以确保生成的文件可用于ZIP任务吗?
我的选择是不是一个辅助按钮按到这个任务......
任何建议,以让我跟你去?
- 谢谢!
创建数据库之后,是不是必须关闭它?像'db_new.application.quit' – geeFlo