string - 在其 On Change 事件处理程序中检索控件的新内容

标签 string vba ms-access recordset

Public Function EditUpdate()
Dim rstEditAddress As DAO.Recordset
Dim Svalue, EditedAddressLine1 As Variant

Svalue = Me.lstBoxCompanyName.Value

EditAddressValue = "SELECT * FROM Companies WHERE CompanyID =  " & Svalue
Set rstEditAddress = CurrentDb.OpenRecordset(EditAddressValue)

EditedAddressLine1 = Me.txtbxAddressLine1.Value

With rstEditAddress
 .Edit
    .Fields("AddressLine1") = EditedAddressLine1
    .Fields("AddressLine2") = NewAddressLine2
    .Fields("AddressLine3") = NewAddressLine3
    .Fields("Town") = NewTown
 .Update
End With

End Function

我有一个名为 txtbxAddressLine1 的文本框。使用 Access 中的 On Change 事件,该事件调用此函数,并且应该执行使用“已编辑”数据更新表中的记录的过程。然而 EditedAddressLine1 中的值似乎永远不会改变!它始终具有表中最初的值。

对于为什么会发生这种情况有什么建议吗?

最佳答案

在控件的 Change 事件处理程序中,读取其 Text 而不是 Value 属性来获取新数据:

EditedAddressLine1 = Me.txtbxAddressLine1.Text

关于string - 在其 On Change 事件处理程序中检索控件的新内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20563865/

相关文章:

java - 为字符串创建随机数

vba - 带有千位分隔符和小数(如果需要)的数字格式

vba - 删除多个单元格中的文本

excel - VBA:粘贴具有不同名称的图表

c# - 为什么用第一个读者 read() 运行第二个读者比在它自己的读者阅读上运行它运行得更快?

java - 插入数据时出现问题

Android:从视频 URI 创建视频缩略图

c++ - 输出复制的字符串时出现问题

sql-server - 将 Access 查询中的 Bool 插入 SQL Server 数据库

ruby - 在 Ruby 中生成字母数字序列