设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1702|回复: 2
打印 上一主题 下一主题

[窗体] 求助:Access2003 窗体遍历控件出现错误

[复制链接]
跳转到指定楼层
1#
发表于 2011-11-10 01:01:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 pangzcn 于 2011-11-10 01:04 编辑

我有一个窗体中嵌套了两层子窗体(共三层)
主窗体:FrmTbl_Regist
子窗体:FrmChild_Tbl_Regist_FuzzyQuery
子子窗体:FrmChild_Tbl_Regist

在子子窗体FrmChild_Tbl_Regist中使用 for each 遍历主窗体的控件,发现只能搜寻到部分控件,几乎所有的文本框控件都找不到,请大家看看问题出在啥地方?For Each ctl In Forms![FrmTbl_Regist].Controls
主要看红色部分 详见附件

==============
以下是子子窗体:FrmChild_Tbl_Regist 中的主要代码
Private Sub Form_Current()
On Error GoTo Err_Form_Current
'   将子窗体中的选中字段值付给编辑主窗体字段
     

  Dim ctl As Control
    Dim tmpName As String
     
     'For Each ctl In Forms![FrmTbl_Regist].Section(acDetail).Controls   'or acPageHeader
     For Each ctl In Forms![FrmTbl_Regist].Controls
        With ctl
            Debug.Print .Name
            If .ControlType = acTextBox Then
            Debug.Print .Name

              tmpName = .Name    '存储利用主窗体的控件的名称,方便下一句使用Controls(Name)来引用同名的子窗体控件
              '要动态地用名称引用窗体控件(包括子窗体),可以用Controls(Name)来引用:
                           
               .Value = Me.Controls(tmpName).Value   '把数据窗体的值赋到接收窗体,前提条件是两个窗体的对应控件名称要一致
              Debug.Print ":" & Me.Controls(tmpName).Value

            End If
            
        End With
    Next ctl

Exit_Form_Current:
    Exit Sub
Err_Form_Current:
    Debug.Print Err.Description
    Resume Exit_Form_Current
End Sub
==========================================
结果只是找到了一个文本框其余的近19个文本框找不到!
这是立即窗口的debug.print 结果
矩形31
矩形44
删除记录
添加记录
撤消
上一条记录
修改记录
保存记录
下一条记录
最后一条记录
第一条记录
ID
ID
Microsoft Office Access 不能找到表达式中引用的字段“ID”。


本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2011-11-10 16:51:21 | 只看该作者
多谢yehf指点。{:soso_e179:}
3#
发表于 2011-11-10 10:10:00 | 只看该作者
On Error GoTo Err_Form_Current改成 On Error GoTo Resume Next就可以找到其他文本框,是由于ID那个控件出错,代码跳出了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-1 18:18 , Processed in 0.101221 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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