NavigationControl 在 Access 中以编程方式更改选项卡

问题描述

(MS Access 2016)我正在尝试更改另一个表单上 NavigationControl 上的选定选项卡。这是我的表单结构:

frm_nav > navSubForm(displaying: "frm_src_ma") > reSubForm ;重新子菜单

navSubForm:frm_nav 上子表单控件的名称

reSubForm:frm_src_ma 上 NavigationControl 的 Sub Form 控件的名称

reSubMenu:frm_src_ma 上导航控件的名称

现在 reSubMenu 上有两个标签

  • 数据 [navData ("frm_subsrc_ma")]
  • 实例 [navInstances ("frm_subinst_ma")]

在浮动表单上,我有一个按钮,当单击该按钮时,我希望 reSubMenu 在选择实例时将选项卡更改为数据。

这是所述按钮上的点击事件中的代码

Forms![frm_nav]![navSubForm].SetFocus

DoCmd.browseto ObjectType:=acbrowsetoForm,_
    ObjectName:="frm_subsrc_ma",_
    PathToSubformControl:="frm_nav.navSubForm>frm_src_ma.reSubForm",_
    DataMode:=acFormEdit

When either Data or Instances is selected and the button is pressed it throws this error: 宏操作 browseto 需要有效的 Path 参数

截图供参考:

Error being displayed

Forms structure

解决方法

问题似乎与应用 BrowseTo 之前关注的内容有关。 为了使完整路径有效,主窗体被聚焦而不是其中的任何子窗体。

Forms![frm_nav].SetFocus

DoCmd.BrowseTo ObjectType:=acBrowseToForm,_
ObjectName:="frm_subsrc_ma",_
PathToSubformControl:="frm_nav.navSubForm>frm_src_ma.reSubForm",_
DataMode:=acFormEdit