vba - 在单独的文件中拆分 Access 数据库
问题描述
我想将一个数据库的每个表导出到单独的 accdb 文件中,但我不明白。
使用以下代码 -> https://www.devhut.net/2012/09/27/ms-access-vba-export-database-objects-to-another-database/目标数据库必须已经存在。
如何为 table1 创建文件 table1.accdb 并仅将一个表导出到该数据库中?如果主数据库有 10 个表,则应创建 10 个文件,并且还应导出所属表。
解决方案
方法如下:
Public Function ExportTables()
Const Path As String = "C:\Test\"
Dim Workspace As DAO.Workspace
Dim Database As DAO.Database
Dim Table As DAO.TableDef
Dim Tablename As String
Set Workspace = DBEngine(0)
For Each Table In CurrentDb.TableDefs
If Table.Attributes = 0 Then
' This is a local table and not a system table.
Tablename = Table.Name
Set Database = Workspace.CreateDatabase(Path & Tablename, dbLangGeneral)
DoCmd.TransferDatabase acExport, "Microsoft Access", Database.Name, acTable, Tablename, Tablename
Debug.Print "Exported " & Tablename
End If
Next
End Function
推荐阅读
- python - 有状态的 LSTM 输入形状错误
- xcode - 使用以下 gradle 文件在 JavaFxPorts ioslaunch 期间出错
- python - 数组中的条件选择
- reactjs - 同时反应路由器列表和详细路由
- xml - 如何为博客模板导航栏的xml循环中的不同链接添加不同的图标?
- pharo - Pharo 状态已损坏,如何保存我的代码?
- sonarqube - sonarqube 6.7 中不存在恢复内置配置文件菜单
- java - 不使用原始类型无法获取泛型类型的类对象
- php - laravel如何保护从刀片到控制器的数据传递
- javascript - 如何使用 javascript 将 json prettry 格式输出为 html?