我有一个组合框,里面有 4 名员工
ID EmployeeNumber FirstName LastName
1 010101 Joshua Dalley
2 020202 Jessica Daze
3 030303 Jason Bruyere
4 040404 Jeremy Bob
当我显示组合框时,一切看起来都很正常。我有一个 onChange() 代码,可以更新名字/姓氏文本框
Private Sub cboEmployeeNo_Change()
Me.txtFirstName.Value = Me.cboEmployeeNo.Column(2)
Me.txtLastName.Value = Me.cboEmployeeNo.Column(3)
End Sub
我的问题是,当我关闭表单 frm_login 时,虽然我选择了任何 ID,但它似乎总是用组合框中选择的最后一个员工覆盖第一个 ID=1。我不知道如何解决这个问题。它仅更改名字和姓氏,而 EmployeeNumber 保持不变。
示例
ID EmployeeNumber FirstName LastName
1 010101 Jason Bruyeye
2 020202 Jessica Daze
3 030303 Jason Bruyere
4 040404 Jeremy Bob
如果我在查看 ID=3 时关闭它,这将是我的表
Default View: Single Form
Allow Form View: Yes
Allow Datasheet View: No
Allow PivotTable View: No
Allow PivotChart View: No
Scroll Bars: Neither
Record Selectors: No
Navigation Buttons: No
Border Style: Thin
Record Source: tbl_employee
Allow Filters: No
Allow Edits: Yes
Allow Deletions: No
Allow Additions: No
Data Entry: No
您的第一个困惑可能是将表单的
Recordsource
设置为 tbl_employee
。您可以使用 tbl_employee
中的值加载组合框。我在你的问题中没有看到任何让我相信表格应该有 Recordsource
的内容。
您可以将文本框的控制源设置为组合框的值。
来自 Microsoft 支持文章:
To display the *YourField* column of the current combo box selection, create a text box control. Make the text box a calculated control by defining the following expression as the ControlSource for the text box
=[cboControlName].Column(1)
where cboControlName is the name of the combo box. The Column property makes the text box (calculated control) read-only.
开始进行要输入到组合框的查询,保存它,给它一个名称,创建一个组合框 - 将查询名称放入组合框属性(行源) 组合框属性(行源类型)= 表/查询 它永远不会出现在第一张唱片或任何其他唱片上