设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

如何查找表中数据

[复制链接]
跳转到指定楼层
1#
发表于 2002-12-12 18:21:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我先建立一个recordset,然后在表里查找一个记录,用什么命令,seek? findrecord?怎么我都用不对?我的目的是比较两表的内容,有不同的就放到一个新表中。标问号的地方总是通不过? 我不想用不匹配查询
Sub correct_tablle()
'Dim ww As Workspace

Dim db1 As Database
Dim tab1 As dao.Recordset
Dim tab2 As dao.Recordset
Dim tab3 As dao.Recordset

Dim cta00, cta0, cta1, cta2, cta3, cta4, cta5, cta6 As String
Dim ct1a00, ct1a0, ct1a1, ct1a2, ct1a3, ct1a4, ct1a5, ct1a6 As String
Dim retur As Integer
Dim Msg, Style, Title, Help, Ctxt
Msg = "Compare complete!"  ' 定义信息。
Style = vbYesNo + vbCritical + vbDefaultButton2  ' 定义按钮。
Title = "MsgBox compare"  ' 定义标题。
Help = "DEMO.HLP"  ' 定义帮助文件。
Ctxt = 1000  ' 定义标题
    ' 上下文。
    ' 显示信息。
'Set ww = DBEngine.Workspaces(0)

Set db1 = CurrentDb

Set tab1 = db1.OpenRecordset("ct")
Set tab2 = db1.OpenRecordset("ct1")
Set tab3 = db1.OpenRecordset("ct2")

tab1.MoveFirst
tab2.MoveFirst
tab3.MoveLast
'ww.BeginTrans
Do Until tab1.EOF
  cta00 = tab1!会员编号.value
  cta0 = tab1!FRXM.value
  cta1 = tab1!ZWMC.value
  cta2 = tab1!ZWDZ.value
  cta3 = tab1!YZBM.value
  cta4 = tab1!DH.value
  cta5 = tab1!CZ.value
  cta6 = tab1!A24.value
  Do Until tab2.EOF
????DoCmd.FindRecord cta00, acAnywhere, True, acDown, False, acCurrent, True
    
       
    If tab2.EOF Then
      tab3.AddNew
      tab3!会员编号 = cta00
      tab3!ZWMC = cta1
      tab3!ct_frxm = cta0
      tab3!ct1_frxm = "已删除!"
    Else
      ct1a0 = tab2!FRXM.value
      ct1a1 = tab2!ZWMC.value
      ct1a2 = tab2!ZWDZ.value
      ct1a3 = tab2!YZBM.value
      ct1a4 = tab2!DH.value
      ct1a5 = tab2!CZ.value
      ct1a6 = tab2!A24.value
      If cta0 <> ct1a0 Or cta1 <> ct1a1 Or cta2 <> ct1a2 Or cta3 <> ct1a3 Or cta4 <> ct1a4 Or cta5 <> ct1a5 Or cta6 <> ct1a6 Then
        tab3.AddNew
        tab3!ct_frxm = cta0
        tab3!ct1_frxm = ct1a0
        tab3!ct_zwdz = cta2
        tab3!ct1_zwdz = ct1a2
        tab3!ct_yzbm = cta3
        tab3!ct1_yzbm = ct1a3
        tab3!ct_dh = cta4
        tab3!ct1_dh = ct1a4
        tab3!ct_cz = cta5
        tab3!ct1_cz = ct1a5
        tab3!ct_a24 = cta6
        tab3!ct1_a24 = ct1a6
      End If
    
     
    End If
  
  Loop
  tab1.MoveNext
  
Loop
'retur = MsgBox(Msg, Style, Title, Help, Ctxt)
'If retur = vbYes Then  ' 用户按下“是”。
'  ww.CommitTrans
  ' 完成某操作。
'Else  ' 用户按下“否”。
'  ww.Rollback
  ' 完成某操作。
'End If
tab1.Close
tab2.Close
tab3.Close

End Sub
[em17]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2002-12-12 18:25:00 | 只看该作者
有必要吗?用查询就可以做比较了。
3#
 楼主| 发表于 2002-12-19 20:46:00 | 只看该作者
版主大人,重申一下,我想练习代码,我也知道查询可以,而且对SQL语句有点熟,只是想练习代码,我也利用HELP文件,试了N次,换了不同的参数,可都不行!请指点!
4#
 楼主| 发表于 2002-12-21 01:38:00 | 只看该作者
版主大人,请不吝指教!
5#
 楼主| 发表于 2002-12-23 21:57:00 | 只看该作者
唉!伤心啊!
6#
发表于 2002-12-23 23:28:00 | 只看该作者
用最简单的语言说话
用最简单的办法工作

有啥伤心呢?

嘻嘻~~~~~~~~
7#
发表于 2002-12-24 04:35:00 | 只看该作者
poiueap[ uf[osaidf
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-15 01:24 , Processed in 0.086194 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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