MS Access VBA更改由ComboBox填充的TextBox

时间:2013-10-17 11:37:59

标签: vba ms-access

我对一些“简单”MS Access vba有疑问。我有一个ComboBox。选择项目后,将更新各种文本框。现在我想编辑一个项目被选中后放在TextBox中的文本(因为数据填充了很多空格,所以我想要它们)。

我尝试了“更新前”,“更新后”,“关于脏”和“改变”事件,但它们似乎都不是正确的......任何人都知道我在寻找什么?感谢

1 个答案:

答案 0 :(得分:1)

两种可能的方式:

(1)不要只输入每个文本框的ControlSource属性的字段名称,而是输入一个表达式,例如=Replace([SomeField], " ", "")。这假定文本框应该是只读的。

(2)根本不使用数据绑定,而是明确设置每个文本框的Value属性:

Dim RS As DAO.Recordset
Set RS = CurrentDB.OpenRecordset(SQL)
txtWhatever.Value = Replace(RS!SomeField, " ", "")
txtAnother.Value = Replace(RS!AnotherField, " ", "")

在第二种情况下,更新数据源的任何更改值也需要明确处理。

那就是说,如果数据有不必要的空格,那么它们肯定应该在源头清理,而不是将数据放入UI ......?