设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

1234下一页
返回列表 发新帖
查看: 8637|回复: 32
打印 上一主题 下一主题

[窗体] 子窗体里选中的记录如何复制

[复制链接]
跳转到指定楼层
1#
发表于 2011-2-14 18:43:26 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我的主窗体是一个快速添加数据的窗体,子窗体是已经输入数据的数据表。我的要求是,在添加新记录时,如何把子窗体里选中的记录复制到主窗体的相关控件里,我写的代码如下:

Private Sub Form_DblClick(Cancel As Integer)
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sql As String
    Set cn = CurrentProject.Connection
        sql = "select * from tblGSdengji"
        rs.Open sql, cn, adOpenKeyset, adLockPessimistic, 1
'        rs.AddNew
        With Forms!frmGSdengji1.Form
        !cboxiaozu = rs("小组")
        !txtpinghao = rs("品号")
        !txtgj = rs("工件")
        !cbogx = rs("工序")
        !cbogr = rs("操作工")
        
        !txtNo.SetFocus
        rs.Update
        rs.Close
        cn.Close
        Set cn = Nothing
   
    End With
End Sub


我知道问题出在sql = "select * from tblGSdengji" 代码,但对于选中的记录,我不知代码上该如何表达,所以特向大家请教,在此先谢了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
33#
 楼主| 发表于 2011-2-19 20:00:55 | 只看该作者
roych 发表于 2011-2-19 11:40
回复 todaynew 的帖子

批评老汉一句,这样可不行,不能过于宠着版友,要逐步培养他们独立思考问题的能力。 ...

你口直心快,这性格我喜欢。
32#
发表于 2011-2-19 16:18:23 | 只看该作者
这个例子用到的几个方法,已经收藏了。
31#
发表于 2011-2-19 12:21:05 | 只看该作者
30#
发表于 2011-2-19 11:40:03 | 只看该作者
回复 todaynew 的帖子

批评老汉一句,这样可不行,不能过于宠着版友,要逐步培养他们独立思考问题的能力。
坛子上有很多东西只需要稍作修改就可以达到目的的实例,可以让他们下载后调试,不对的地方再提出,这样才有助于他们学好Access。
29#
发表于 2011-2-18 19:48:29 | 只看该作者
注意:列表框设置时需要选列标题为是,这样才能用Me.表.Column(i, 0)来读取列名称。
28#
发表于 2011-2-18 19:44:14 | 只看该作者
本帖最后由 todaynew 于 2011-2-18 19:45 编辑
简 发表于 2011-2-18 17:37
我想再问问,如果把子窗体换成列表框,列表框里选中的记录又如何双击复制呢?







Private Sub 表_AfterUpdate()
Dim i As Long
For i = 0 To Me.表.ColumnCount - 1
    Me.Controls(Me.表.Column(i, 0)).Value = Me.表.Column(i)
Next
End Sub

Private Sub 确定_Click()
Call 编辑(Me.选项.Value)
End Sub

Sub 编辑(num As Long)
Dim rs As New ADODB.Recordset
Dim ssql As String
Dim i As Long
ssql = "select * from tblGSdengji where 编号=" & Nz(Me.编号.Value, 0)
rs.Open ssql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
If num = 1 Then
    rs.AddNew
End If
For i = 1 To rs.Fields.Count - 1
    rs(i).Value = Me.Controls(rs(i).Name).Value
Next
rs.Update
rs.Close
Set rs = Nothing
Me.表.Requery
End Sub

本帖子中包含更多资源

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

x
27#
发表于 2011-2-18 19:15:36 | 只看该作者
26#
 楼主| 发表于 2011-2-18 19:11:29 | 只看该作者
roych 发表于 2011-2-18 18:37
关于列表框的问题,小鱼游游和我都写了相关实例,自己找找看,别太懒了。
实例是修改记录的,但只要修改好 ...

关键是论坛上无法搜索指定用户的帖子来,比如我要搜索你的帖子,你的用户名roych ,我只能找到你的空间,却找不出你所发表的所有帖子来。
25#
发表于 2011-2-18 18:37:31 | 只看该作者
本帖最后由 roych 于 2011-2-18 19:01 编辑

关于列表框的问题,小鱼游游和我都写了相关实例,自己找找看,别太懒了。
实例是修改记录的,但只要修改好SQL语句,同样可以作为追加记录来用。
学习Access,重要的是思考过程,要学会举一反三,否则收效甚微。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 17:28 , Processed in 0.096374 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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