如何使用AutoExec宏在Access中启动时为标签分配某些文本?

时间:2016-06-06 15:16:33

标签: vba ms-access access-vba

我有一个AutoExec宏打开一个包含大量按钮和标签等的表单。其中一个标签将显示文件夹的路径目录。我有一个按钮,可以让您浏览并选择一个文件夹,标签将使用最近选择的文件夹路径进行更新。作为默认文件夹路径。我希望它转到个人用户的

  

C:\用户\ EXAMPLENAME

文件夹。作为测试,我使用以下函数生成了一个显示其主文件夹的消息框:

Public Function setPath()

    Dim defaultPath As String
    defaultPath = Environ$("USERPROFILE")
    pathLabel1.Caption = defaultPath

End Function

问题是,为了从AutoExec宏运行代码,它不能在表单模块中。但是为了访问标签及其属性以便更新它们,我必须在表单模块中。我不知道怎么解决这个问题。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

  

问题是,为了从AutoExec宏运行代码,它不能   在表单模块中。但是为了访问标签及其标签   属性为了更新它们,我必须在表单模块中。一世   不知道怎么解决这个问题。

创建一个执行两个操作的VBA函数:

  1. 打开表单:DoCmd.OpenForm "YourFormName"
  2. 更改该标签的CaptionForms![YourFormName]!pathLabel1.Caption = Environ$("USERPROFILE")
  3. 然后更改AutoExec宏以使用宏RunCode操作调用该函数。

    但也许您希望每次打开表单时调整Caption,而不仅仅是在数据库启动时。在这种情况下,请从表单加载事件中设置Caption

    Private Sub Form_Load()
        Me!pathLabel1.Caption = Environ$("USERPROFILE")
    End Sub