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
Ms access 导航到导航子窗体中的其他选项卡_Ms Access_Vba_Ms Access 2010 - Fatal编程技术网

Ms access 导航到导航子窗体中的其他选项卡

Ms access 导航到导航子窗体中的其他选项卡,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,在ms access 2010数据库中,我有一个列表框,其后更新过程需要(除其他外)导航到导航子窗体中的特定选项卡。我可以让它更改导航子窗体的SourceObject属性,但所选的选项卡不会更改,因此用户最终会看到选择了错误选项卡的正确源对象。这看起来不专业。如何更改所选选项卡和源对象 我上传了一个简化的数据库,重新创建了这个问题 需要更改其afterupdate方法的列表框称为lstbxClients。下面是我当前的afterupdate方法草稿,它当前抛出了一个错误: Private Sub

在ms access 2010数据库中,我有一个列表框,其后更新过程需要(除其他外)导航到导航子窗体中的特定选项卡。我可以让它更改导航子窗体的SourceObject属性,但所选的选项卡不会更改,因此用户最终会看到选择了错误选项卡的正确源对象。这看起来不专业。如何更改所选选项卡和源对象

我上传了一个简化的数据库,重新创建了这个问题

需要更改其afterupdate方法的列表框称为
lstbxClients
。下面是我当前的afterupdate方法草稿,它当前抛出了一个错误:

Private Sub lstbxClients_AfterUpdate()
  Dim rst
  Set rst = Me.RecordsetClone
  rst.FindFirst "ClientNumber = " & lstbxClients.Column(0)
  Me.Bookmark = rst.Bookmark
  'Forms!Main!NavigationSubform.Form!NavigationSubform.SourceObject = "qryListCommunicationForms"
  DoCmd.BrowseTo acBrowseToForm, "qryListCommunicationForms", "Forms!Main!NavigationSubform.Form!NavigationSubform"
  Form.NavigationSubform "  "
  'Forms!Main!NavigationSubform.Form!NavigationSubform.SelectedTab = "CommFormsNavBtn"
  Set rst = Nothing
End Sub  

如何更改上面的代码,以便在用户单击列表框中的其他记录时更改所选选项卡和导航子窗体的源对象

Access对路径的正确语法给出了相对合理的解释

表格1.子表格1“>

因此,您的BrowseTo命令应该如下所示:

DoCmd.BrowseTo acBrowseToForm,“qryListCommunicationForms”,“Main.NavigationSubform>findclients导航.NavigationSubform”

使用以下语法

DoCmd.BrowseTo acBrowseToForm, "qryListCommunicationForms", "Main.NavigationSubform>findClientsNavigation.NavigationSubform", "ClientNumber = " & lstbxClients.Column(0)

唯一的变化是第二个参数语法,使用

“Main.NavigationSubform>findClient导航.NavigationSubform”


希望这有助于最简单的方法:

Form_NavFormName.NavigationSubform.SourceObject = "FormName"

我很抱歉-我看了两个问题,然后在你的问题中输入了另一个问题的答案。这实际上是一个C到C的问题。我已经删除了我的答案,但是如果你在这里的帖子中看到了一些有价值的东西,我会还原。我注意到,这种策略的问题是,当你选择时,正确的导航按钮没有突出显示只需更改SourceObject。我找不到修改导航控件SelectedValue的方法,但BrowseTo命令似乎可以解决所有问题。@ThinkingCap+1感谢您的帮助。感谢您的帮助。+1感谢您的回答。我正试图将赏金奖励给您,但我看不到如何做。S.O.似乎有tak将赏金功能从我的界面中删除。如果我有办法将赏金奖励给你,我将很乐意这样做。你可以在与他们的任何通信中使用此评论。他们已经从我的帐户中获取了分数。
Form_NavFormName.NavigationSubform.SourceObject = "FormName"