【问题标题】:Setting Form recordsource using DoCmd.Openform使用 DoCmd.Openform 设置表单记录源
【发布时间】:2018-03-22 22:58:54
【问题描述】:

我有一个表单,可以从我的 Access 2013 应用程序中的多个位置访问 - 根据打开表单的位置,记录源应该不同 - 例如,如果打开表单以搜索记录,则表单记录源是一个参数查询,用户输入记录 ID 作为参数 - 但如果从其他地方打开表单,记录源是一个选择查询,记录 ID 是使用 VBA 传递的。

如果可能,我想避免使用双表单 - 我只想要一个表单并且能够在表单打开时设置记录源...是否可以在打开表单时设置表单记录源(而不是在表单已打开)?

【问题讨论】:

    标签: ms-access vba


    【解决方案1】:

    有一些 VBA 可以重写表单读取的查询。试试这个:

    Set db = CurrentDb()
    DoCmd.DeleteObject acQuery, "myFormQuery"
    Set q = db.CreateQueryDef("myFormQuery")
    
    
    q.Sql = "SELECT * FROM mytable WHERE 1=1;"
    DoCmd.OpenForm "myForm", acNormal
    

    【讨论】:

      猜你喜欢
      • 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
      相关资源
      最近更新 更多