Access VBA新手求助:如何获取窗体当前记录的字段值?
解决Access VBA中赋值窗体字段值的编译错误
嘿,我来帮你搞定这个问题!你遇到的编译错误是因为对CurrentRecord的用法理解错啦——它返回的是当前记录在窗体记录集中的序号(数字),并不是一个能直接访问字段的集合/记录对象,所以用CurrentRecord![fieldDescripcion]肯定会报错。
给你两种正确的写法,选哪种都可以:
方法1:直接引用窗体的绑定控件
如果你的窗体是绑定窗体,字段fieldDescripcion对应的控件名称和字段名一致(或者你知道控件名),直接这么写就行:
Dim strDescripcion As String strDescripcion = Forms("frmProductos")!fieldDescripcion
补充:.Value是控件的默认属性,所以可以省略不写,写全的话是Forms("frmProductos")!fieldDescripcion.Value
方法2:通过窗体的Recordset访问
如果想用记录集的方式获取字段值,可以调用窗体的Recordset属性,它指向当前绑定的记录集,且自动定位到当前显示的记录:
Dim strDescripcion As String strDescripcion = Forms("frmProductos").Recordset!fieldDescripcion
⚠️ 注意:如果你的控件名称和字段名称不一样(比如控件叫txtDescripcion),一定要用控件名称代替字段名,比如Forms("frmProductos")!txtDescripcion。
内容的提问来源于stack exchange,提问作者Cristina K
相关产品推荐
相关产品推荐

