Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba MS ACCESS是否在创建新数据库时传递数据库属性?_Vba_Ms Access - Fatal编程技术网

Vba MS ACCESS是否在创建新数据库时传递数据库属性?

Vba MS ACCESS是否在创建新数据库时传递数据库属性?,vba,ms-access,Vba,Ms Access,我试图创建一些类似于部署数据库的东西,比如发行版。从我的主数据库创建一个小数据库,然后附加到邮件并发送给其他人。 我为什么要这么做说来话长,但我必须这么做 我可以创建数据库传输表查询,但我不知道如何发送属性,如下所示。如果有人有另一种方法,那也没关系。 必须分布在10个不同的地方。但我需要在锁定模式下到达那里并自动弹出表单 Public Function fnc_CreateAccessChicago() Dim acApp As Access.Application

我试图创建一些类似于部署数据库的东西,比如发行版。从我的主数据库创建一个小数据库,然后附加到邮件并发送给其他人。 我为什么要这么做说来话长,但我必须这么做

我可以创建数据库传输表查询,但我不知道如何发送属性,如下所示。如果有人有另一种方法,那也没关系。 必须分布在10个不同的地方。但我需要在锁定模式下到达那里并自动弹出表单

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
端接头