另一个初学者提问,但这次是关于MS Access Controls。 我有一个表单,我有一个包含许多项目的列表框。 我需要做的是当我双击列表框中存储的这个项目之一时,如果所有文本框都填充了一个项目,该项目存储在来自我的表格的同一行的不同字段中。
我已经检查了很多教程,但没有找到一个好的解决方案。
感谢您的帮助!
编辑:
我有一个包含多个字段的表格。列表框包含第一个字段(ID)中的项目。其余字段(平铺,交付日期等)由我的表单中的文本框表示。
当我双击单击列表框中的一个项目时,将填充文本框。 如果我从列表框中选择第5项表示我表格中的第5行,则每个文本框的项目都应该来自表格中所示字段的同一行。
我只想用这个表格编辑存储在表格中的数据。
答案 0 :(得分:0)
好的,我终于得到了这个解决方案。
我使用DLOOKUP在双击事件后将数据拉到我的表单。
Dim ctrloop
For Each ctrloop In Me.lbReportID.ItemsSelected
strReportID = Me.lbReportID.ItemData(ctrloop)
Next ctrloop
Me.txtTitle = DLookup("[Title]", "tblreports", "[ID No] = '" & strReportID & "'")
循环存储我在表格中的所有报告ID。 DLOOKUP
使用此作为过滤器。它就像SQL中的WHERE
。
当程序运行时,将填写我的标题文本框,查看使用tblreports
过滤的strReportID
表格中的标题字段。
它的工作方式类似于我在其他文本框中使用的SQL查询:
SELECT tblReports.[ID No]
FROM tblReports
WHERE (((tblReports.WorkPacage) = 'CDS'))
AND (((tblReports.State) <> 'Complete'));