我正在使用Access 2010,我想要做的是将表单中的两个字段连接在一起。第一个字段是组合框(TypeCombo
),另一个是文本框(PeriodText
)。我需要做的是当用户从TypeCombo中选择一个选项时,它将使用正确的句点填充PeriodText。
从我所看到的最简单的方法是使用提供的= DLookup函数。哪个给了我这些问题。我目前的DLookUp代码是:
=DLookUp("[Type_Name]","Type"," [TypeCombo] =" & [Forms]![Form1]![TypeCombo])
我当前的组合框代码是:
SELECT Type.Period_ID AS Expr1, Type.Type_Name AS Expr2
FROM Type
ORDER BY Type.Type_Name;
所以假设发生的是选择我需要能够获得Period_ID
的类型,然后在文本框中我想使用Period_ID
来选择正确的句点。当表单加载时,它会给我列表中第一项的Expr1,但是当我更改它时它不会更新。
如何使用组合框中的新数据更新dlookup?
答案 0 :(得分:0)
在TypeCombo
' AfterUpdate
事件中:
Me.Requery
这会更新控件中使用的所有查询和dlookup等。
答案 1 :(得分:0)
我最终看到的是我文本字段的焦点控制。我使用了组合框的第一列并将其提供到dlookup中,然后我可以设置字段的文本,只要它发生变化。我知道它不会自动显示,但最后我仍然可以获得正确的信息来保存。这就是我最终做的事情:
Strg333 = Me.TypeCombo.Value
VarX = DLookup("[Period.Period]", "Period", "[Period.Period_ID] =" & Strg333)
If PeriodText.Locked = True Then
PeriodText.Locked = False
End If
PeriodText.Text = VarX
PeriodText.Locked = True
我有锁在那里,所以没有人可以改变任何值,它的设计理念,我可能最终只是删除。