半夜罗 发表于:2017-06-17 11:22:04
请问老师,我在做一个列表框双击快速输入时,由于这个列表框会在三个地方(入库,出库,销售)用到,为了简化代码,在列表框窗体上做了两个文本框,一个用来获取主窗体名称,一个用来获取子窗体名称,用他们确定传递的目的地。现在问题是传递的目标主窗体没有问题,但目标子窗体名称出现问题了,系统提示找不到***字段,代码为:
If Not IsNull(Me.目标主窗体名) And Not IsNull(Me.目标子窗体名) Then '如果目的地不为空,即有目的地
Forms(Me.目标主窗体名)!Me.目标子窗体名.Form.物料代码 = Me.列表框.Column(0) '将数据传递到目的地,将“Me.目标子窗体名”修改为实际的子窗体名称时没有问题。
End If
DoCmd.Close acForm, Me.Name
请问各位老师,应该如何修改?谢谢!!!
我用了很多方法和很多次,都没有能够用变量实现。不得不用统一将 Me.目标子窗体名 改为“子窗体”即同一个名称,然后在目标主窗体中将子窗体控件全部命名为“子窗体”,减少子窗体变量。
试一下:
Forms(目标主窗体名).controls(目标子窗体名).Form.controls(物料代码)
括号内的,均为文本型变量
例如
Forms(me.目标主窗体名).controls(me.目标子窗体名).Form.controls("物料代码")
点击下载此附件谢谢!这样确实解决了我的问题,再次谢谢!
总记录:3篇 页次:1/1 9 1 :