设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

123下一页
返回列表 发新帖
查看: 5386|回复: 23
打印 上一主题 下一主题

[Access本身] 两子窗体之间刷新问题,该如何解决

[复制链接]
跳转到指定楼层
1#
发表于 2009-1-14 13:54:47 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
主窗体A上,有子窗体B和C,B、C上的控件完全相同,且是同一数据源。现在B上某一字段更改后直接刷新C上相应字段。
在B的子窗体更新后,或B子窗体X字段编写代码:
Forms![A]![C]![X] = Me![X]

打开A时出现:
运行时错误‘2455’
您输入的表达式对属性Form/Report的引用无效

但实际运行时还是能够刷新的,把A作为启动窗体则不会有错误提示。
不知道为什么,查了很多资料都没有这面的讨论
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
24#
 楼主| 发表于 2009-1-18 15:48:30 | 只看该作者
问题解决了,深表感谢!

点击这里给我发消息

23#
发表于 2009-1-17 15:15:36 | 只看该作者
补充一下:
在主窗体上先创建的窗体会先加载,所以还有一个办法是先创建子窗体C,再创建子窗体B.
但又有一个问题:在关闭主窗体时,先加载的子窗体会先卸载,这样在关闭时又会出现错误.
你自己领会一下吧

点击这里给我发消息

22#
发表于 2009-1-17 15:10:26 | 只看该作者
原帖由 caoxi 于 2009-1-14 13:54 发表
主窗体A上,有子窗体B和C,B、C上的控件完全相同,且是同一数据源。现在B上某一字段更改后直接刷新C上相应字段。
在B的子窗体更新后,或B子窗体X字段编写代码:
Forms![A]![C]![X] = Me![X]

打开A时出现:
运行 ...

你的问题的原因是:因为子窗体加载有先后顺序.
你的窗体中,B窗体先于C窗体加载,这时在B窗体的成为当前事件中引用C窗体就出错了,因B窗体已加载但C窗体尚未加载.
一个解决办法是在出错的代码前加一句以忽略错误,因为这个错误实际没有什么影响
On Error Resume Next
21#
 楼主| 发表于 2009-1-14 16:28:43 | 只看该作者
我的编码应该是错在哪里了?
20#
 楼主| 发表于 2009-1-14 16:27:18 | 只看该作者
数据表模式可以直接加以比较查看了
19#
 楼主| 发表于 2009-1-14 16:26:39 | 只看该作者
SC菲林档案4K的中还有很多段的,而且几条记录间经有联系的需要上下翻看的,所以象您那样的,会不太方便
18#
 楼主| 发表于 2009-1-14 16:22:29 | 只看该作者
是链接主、子字段吧?但问题是实际应用中我会有这样的4对窗体在同一个主窗体上(数据型式是类似的),现在我把4个象“SC生产记录管理 01子窗”的统一成现在的一个““SC生产记录管理 01子窗”了,所以现在主窗体上是有4个表格形式的子窗体共用“SC生产记录管理 01子窗”来显示和修改数据的
17#
发表于 2009-1-14 16:16:25 | 只看该作者
还可以用鼠标中建滚动记录。
16#
发表于 2009-1-14 16:15:40 | 只看该作者
原帖由 Henry D. Sy 于 2009-1-14 16:12 发表
但这样的话需要一个个去刷新了
怎么会呢
代码会感觉比较多比较烦
根本就不需要代码


一个普通的丛栏式窗体就能解决你的问题
浏览记录按记录导航器,
新增记录按最右边的按钮。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-23 16:53 , Processed in 0.111845 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表