Vba MS ACCESS是否在创建新数据库时传递数据库属性?
我试图创建一些类似于部署数据库的东西,比如发行版。从我的主数据库创建一个小数据库,然后附加到邮件并发送给其他人。 我为什么要这么做说来话长,但我必须这么做 我可以创建数据库传输表查询,但我不知道如何发送属性,如下所示。如果有人有另一种方法,那也没关系。 必须分布在10个不同的地方。但我需要在锁定模式下到达那里并自动弹出表单Vba MS ACCESS是否在创建新数据库时传递数据库属性?,vba,ms-access,Vba,Ms Access,我试图创建一些类似于部署数据库的东西,比如发行版。从我的主数据库创建一个小数据库,然后附加到邮件并发送给其他人。 我为什么要这么做说来话长,但我必须这么做 我可以创建数据库传输表查询,但我不知道如何发送属性,如下所示。如果有人有另一种方法,那也没关系。 必须分布在10个不同的地方。但我需要在锁定模式下到达那里并自动弹出表单 Public Function fnc_CreateAccessChicago() Dim acApp As Access.Application
Public Function fnc_CreateAccessChicago()
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.Application.NewCurrentDatabase ("C:\TestTest\ChicagpDatabase")
------ acApp.Properties("StartupForm") = "frmAssetChicago" ----
acApp.Quit
End Function
Public Function fnc_Transfers()
DoCmd.TransferDatabase acExport, "Microsoft Access", "C:\TestTest\ChicagoDatabase.accdb", acTable, "tblAllAsset", "tblAllAsset"
DoCmd.TransferDatabase acExport, "Microsoft Access", "C:\TestTest\ChicagoDatabase.accdb", acQuery, "QryAssetChicago", "QryAssetChicago"
DoCmd.TransferDatabase acExport, "Microsoft Access", "C:\TestTest\ChicagoDatabase.accdb", acForm, "frmAssetChicago", "frmAssetChicagoF"
End Function
试试这个
Public Sub CopyProperties(dstDBname As String)
' copy properties from currentdb() to dstDBname
Dim dstDB As Database
Dim srcDB As Database
Dim ws As Workspace
Dim srcP As Property
Dim dstP As Property
Set srcDB = CurrDB()
Set ws = DefaultWorkspaceClone()
Set dstDB = ws.OpenDatabase(dstDBname)
For Each srcP In srcDB.Properties
Debug.Print srcP.Name,
If (srcP.Name <> "Name") And (srcP.Name <> "Connection") Then
If (Nz(srcP.value, "") <> "") Then
Set dstP = dstDB.CreateProperty(srcP.Name, srcP.Type, Nz(srcP.value, ""))
On Error Resume Next
dstDB.Properties.Append dstP
dstDB.Properties(srcP.Name).value = srcP.value
On Error GoTo 0
End If
Debug.Print "set", srcP.value
End If
Debug.Print
Next srcP
dstDB.Properties.Refresh
dstDB.Close
Set dstDB = Nothing
Set srcDB = Nothing
Set ws = Nothing
End Sub
公共子副本属性(dstDBname作为字符串)
'将属性从currentdb()复制到dstDBname
将dstDB作为数据库
Dim srcDB作为数据库
将ws作为工作区
Dim srcP作为属性
Dim dstP作为属性
设置srcDB=CurrDB()
设置ws=DefaultWorkspaceClone()
设置dstDB=ws.OpenDatabase(dstDBname)
对于srcDB.Properties中的每个srcP
Debug.Print srcP.Name,
如果是(srcP.Name“Name”)和(srcP.Name“Connection”),则
如果(Nz(srcP.value,“”“”),则
Set dstP=dstDB.CreateProperty(srcP.Name,srcP.Type,Nz(srcP.value,“”)
出错时继续下一步
dstDB.Properties.Append dstP
属性(srcP.Name).value=srcP.value
错误转到0
如果结束
调试。打印“set”,srcP.value
如果结束
调试。打印
下一个srcP
dstDB.Properties.Refresh
关闭
设置dstDB=Nothing
设置srcDB=Nothing
设置ws=Nothing
端接头