【问题标题】:How to use AutoExec macro to assign labels certain text on startup in Access?如何使用 AutoExec 宏在 Access 启动时为某些文本分配标签?
【发布时间】:2016-06-07 00:39:47
【问题描述】:

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

C:\Users\exampleName

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

Public Function setPath()

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

End Function

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

【问题讨论】:

  • 您不能将标签上的访问修饰符设置为Public 以便您可以访问它们吗?
  • 如何为标签设置它?关于它的文档不多
  • 抱歉,我已经有十多年没有使用 Access VBA 了。我记得它与其他办公产品中的 VBA 有很大不同,因此在表单成员上设置访问权限可能不一样。我只是不记得了。
  • 使用函数返回值,所以设置路径=defaultPath,然后你可以在任何地方使用,比如public function setPath() as string然后在表单中,me.label1.caption = setPath()

标签: ms-access vba


【解决方案1】:

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

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

  1. 打开您的表单:DoCmd.OpenForm "YourFormName"
  2. 更改该标签的CaptionForms![YourFormName]!pathLabel1.Caption = Environ$("USERPROFILE")

然后更改您的 AutoExec 宏以使用宏 RunCode 操作调用函数。

但也许您更愿意在每次打开表单时调整Caption,而不仅仅是在数据库启动时。在这种情况下,从 Form Load 事件中设置 Caption

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多