我在Access 2007中有一个多记录表单,在行尾有一个命令按钮。
当前记录可能是第一个,但我想点击第4条记录上的按钮(实际上不需要进入记录)并打开一个包含与第4条记录相关的信息的表格。
目前它会显示与第一条记录相关的信息,因为光标位于第一条记录的字段中。
当我点击第4条记录上的按钮时,它似乎仍然在第一条记录上认为它。
我的代码是:
Dim stDocName As String
DoCmd.OpenForm stDocName, , , "WorkAddressId = forms!Persons!WorkAddressId"
答案 0 :(得分:0)
我想点击第4条记录上的按钮(实际上没有 必须进入记录)
但是当您点击该按钮时,您将进入第4条记录。
调整按钮的密码以打开表单ID的表单过滤。此ID将是您要单击的记录的ID - 如下所示,您将Id连接到条件字符串中:
Dim stDocName As String
Dim Id As Long
' Name of the form to open.
stDocName = "NameOfYourFormToOpen"
' Pick the Id of the current record.
Id = Me!WorkAddressId
DoCmd.OpenForm stDocName, , , "WorkAddressId = " & Id & ""
答案 1 :(得分:0)
每个命令按钮都需要自定义代码。你现在拥有的代码没有获得该行控件的值,他们都在看同一个控件,我假设它有第一个记录的ID。
首先,确保每行上每个[WorkAddressId]
控件的名称都有一个单独的名称,例如:[WorkAddressId1]
,[WorkAddressId2]
...
然后转到每个命令按钮并使表单引用匹配它所在的行。例如,第1行上的按钮应为:
DoCmd.OpenForm stDocName, , , "WorkAddressId = " & [Forms]![Persons]![WorkAddressId1]
第一行的[WorkAddressId]
控件名称实际上称为[WorkAddressId1]
。
将它放在第2行的按钮代码中:
DoCmd.OpenForm stDocName, , , "WorkAddressId = " & [Forms]![Persons]![WorkAddressId2]
等等。
答案 2 :(得分:0)
向所有人道歉。我已经开始在Access中尝试不同的东西,并在该表单上创建了一个标签(单击它以查看工作地址)以查看它在表单上的外观。当我放回控制按钮时它工作正常。非常适合尝试!!!
感谢所有试图以任何方式提供帮助的人。非常感激。
迈克