Access VBA: 将当前数据库的表导出到新数据库
要在 Access VBA 中将当前数据库的指定表导出到新的数据库,你可以使用以下代码:
Sub ExportTableToNewDatabase()
Dim sourceDB As Database
Dim destDB As Database
Dim sourceTable As TableDef
Dim destTable As TableDef
' 设置源数据库
Set sourceDB = CurrentDb()
' 创建新的目标数据库
Set destDB = DBEngine.CreateDatabase('C:\Path\To\New\Database.accdb', dbLangGeneral)
' 获取源表
Set sourceTable = sourceDB.TableDefs('YourTableName')
' 创建目标表
Set destTable = destDB.CreateTableDef('YourTableName')
' 复制源表结构到目标表
For Each fld In sourceTable.Fields
destTable.Fields.Append destTable.CreateField(fld.Name, fld.Type, fld.Size)
Next fld
' 将目标表添加到目标数据库
destDB.TableDefs.Append destTable
' 关闭数据库连接
sourceDB.Close
destDB.Close
' 释放资源
Set sourceTable = Nothing
Set destTable = Nothing
Set sourceDB = Nothing
Set destDB = Nothing
MsgBox '表已成功导出到新的数据库。'
End Sub
在这段代码中,你需要将'YourTableName'替换为你要导出的表的实际名称,并将'C:\Path\To\New\Database.accdb'替换为新数据库的实际路径和名称。
这段代码首先获取当前数据库作为源数据库,并使用DBEngine.CreateDatabase方法创建一个新的目标数据库。然后,它使用源数据库中的TableDefs集合获取指定的源表。接下来,它使用destDB.CreateTableDef方法创建一个新的目标表,并使用循环遍历源表的字段,将字段复制到目标表中。最后,它将目标表添加到目标数据库的TableDefs集合中。
请确保在使用此代码之前备份你的数据库,以防止意外数据丢失。
原文地址: http://www.cveoy.top/t/topic/o7N 著作权归作者所有。请勿转载和采集!