引用超链接文本框的值

时间:2017-06-28 19:24:26

标签: ms-access access-vba

所以我对这段代码有些困难。我知道这是令人讨厌的罗嗦,但是我所做的每一次尝试都将其中一些形式的引用转化为变量以节省空间,这些都是因为我的功能比以前更少。

基本上我到目前为止所做的是创建一个包含多个标签的导航表单,一个用于创建票证,一个用于解析/编辑票证,另一个用于搜索票证。搜索选项卡基本上是一个连续的表单,根据我输入的搜索条件进行更新。我的目标是,当我点击每条记录的ticketID时,它将带我到Resolve / Edit Ticket页面上的所选记录(在该页面上我有一个组合框[称为cboGoToRecord],您可以在其中选择所需的记录)。

我有一个超链接到位,它将用户带到Resolve / Edit页面和代码,只有在我用四个星号(为清晰起见)表示的行替换为

时才会起作用
rst.FindFirst "ticketID =" & [some number].

当我这样做时,结果如预期。如果我把它留在下面,每条记录都会查找第一条记录(一个Debug.print检查显示该字段的值显然总是1 ......)所以我想我需要弄清楚的是我如何访问ticketID超链接的值,以便我可以将它放在该行上并使我的代码有效运行?我很抱歉,如果这个过于详细,但想得太多比不够好。

 Private Sub ticketID_Click()

    'Takes user from Search Tickets to Resolve/Edit Issues tab
    DoCmd.BrowseTo acBrowseToForm, "frmResolveIssues", "frmBrowseTickets.NavigationSubform"

    On Error Resume Next
    Dim rst As Object
    Set rst = Forms!frmBrowseTickets!NavigationSubform.Form.RecordsetClone
    [Forms]![frmBrowseTickets]![NavigationSubform].Form![cboGoToRecord].Value = [Forms]![frmBrowseTickets]![NavigationSubform].Form![ticketID].Value
****rst.FindFirst "ticketID =" & [Forms]![frmBrowseTickets]![NavigationSubform].Form![cboGoToRecord].Value
    Forms!frmBrowseTickets!NavigationSubform.Form.Bookmark = rst.Bookmark

    Debug.Print [Forms]![frmBrowseTickets]![NavigationSubform].Form![ticketID].Value

End Sub

修改 在改变我的表单以添加单独的超链接并引用静态ticketID之后,我得出结论,我认为的所有内容都不是。找到超链接的值不是问题。问题是我的ticketID值确实坚持成为一个,我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:1)

当这工作时:

DECLARE @var VARCHAR(100) ,@SQL NVARCHAR(max) = ''

SET @var = '%stringtolookup%'
SET @sql = 'select name From sys.procedures WHERE  Object_definition(object_id) LIKE ''' + @var + ''''
print @sql

EXEC SP_EXECUTESQL @SQL

然后还看看:

Debug.Print [Forms]![frmBrowseTickets]![NavigationSubform].Form![ticketID].Value

截至6月7日,我从不使用导航表单。它太复杂了。