Office中国论坛/Access中国论坛
标题:
有关在宏中使用requery无效的问题
[打印本页]
作者:
yang_hf
时间:
2009-2-17 20:27
标题:
有关在宏中使用requery无效的问题
本帖最后由 yang_hf 于 2009-2-17 20:33 编辑
一个列表框的行来源设置成了一个表,对表新增了一条记录后,对列表框使用宏的requery命令更新显示,但不起作用.请教各位?
作者:
紫风
时间:
2009-2-17 20:53
本帖最后由 紫风 于 2009-2-17 20:57 编辑
不用宏,而在列表框的after update(更新后)用事件过程 .requery
假设列表框是“姓名”,在 属性 - 更新后 用 事件过程:
private sub 姓名_after update()
me.姓名.requery
end sub
试一下吧
作者:
Henry D. Sy
时间:
2009-2-17 20:54
没有问题呀
作者:
yang_hf
时间:
2009-2-17 21:05
用事件过程,也不行.
作者:
紫风
时间:
2009-2-19 21:30
不好意思,之前没下你的例子。
这样吧,不要用 列表23,用 子窗体。
然后用ADO写保存 客户信息表 新增的数据
最后加一句 me."子窗体名".requery
这样就可以了。
作者:
紫风
时间:
2009-2-22 23:14
本帖最后由 紫风 于 2009-2-24 21:14 编辑
好吧,帮你改好了,你看一下
代码很简单:
Private Sub Cmd添加_Click()
Dim rst As New ADODB.Recordset
rst.Open "客户信息表", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
With rst
.AddNew
![客户编号] = Me.Text1客户编号
![客户名称] = Me.Text2客户名称
![联系人] = Me.Text3联系人
![电话] = Me.Text4电话
![传真] = Me.Text5传真
![手机] = Me.Text6手机
![地址] = Me.Text7地址
.Update
End With
rst.Close
Set rst = Nothing
Me.frm客户信息表child.Requery
End Sub
你做一个命令按钮Cmd添加就可以了
另外,客户信息表里的 ID 和 客户编号 是不是有一个是多余的可以不要?
或者说,如果没用ADO,当你输入数据时没有保存(或按了ESC键),ID会断开不连续(如:151,152,154),这样我建议你做一个自动编号,用DMax找到最大的客户编号,然后在最大的客户编号后+1
作者:
yang_hf
时间:
2009-3-1 16:25
谢谢!
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3