Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4612|回复: 17

[已解决]查询上一个或下一个记录的代码问题,有代码,但不坚持!

[复制链接]
发表于 2014-4-15 10:05 | 显示全部楼层 |阅读模式
本帖最后由 liwenhong 于 2014-4-16 10:59 编辑

        想通过按钮查询上一个或下一个的记录,已经有代码了,但查询不了几个就不安顺序走了,不能坚持了!请您看看问题出现在哪里?

具体看看附件吧 上一条、下一条记录代码有问题!?.rar (128.31 KB, 下载次数: 15)
发表于 2014-4-15 10:58 | 显示全部楼层
Set rg = .Cells.Find([D2], LookIn:=xlValues, lookat:=xlWhole)

评分

参与人数 1 +1 收起 理由
liwenhong + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2014-4-15 11:08 | 显示全部楼层
或者。。。。换个思路
  1. Private Sub CommandButton2_Click() '下一条按钮
  2.     Set d = CreateObject("scripting.dictionary")
  3.     arr = Sheets("信息库2").[a1].CurrentRegion
  4.     For i = 2 To UBound(arr)
  5.         d(arr(i, 1)) = i
  6.     Next
  7.     r = d([d2].Value) + 1
  8.     If r > UBound(arr) Then MsgBox "这已是最后一位啦!" Else [d2] = arr(r, 1)
  9. End Sub
复制代码

评分

参与人数 1 +1 收起 理由
liwenhong + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2014-4-15 11:21 | 显示全部楼层
1、在模块1里定义公共变量 Public arr, d
2、workbook_open对公共变量赋值
  1. Private Sub Workbook_Open()
  2.     Set d = CreateObject("scripting.dictionary")
  3.     arr = Sheets("信息库2").[a1].CurrentRegion
  4.     For i = 2 To UBound(arr)
  5.         d(arr(i, 1)) = i
  6.     Next
  7. End Sub
复制代码
3、两个按钮代码如下:
  1. Private Sub CommandButton2_Click() '下一条按钮
  2.     r = d([d2].Value) + 1
  3.     If r > UBound(arr) Then MsgBox "这已是最后一位啦!" Else [d2] = arr(r, 1)
  4. End Sub
  5. Private Sub CommandButton4_Click() '上一条按钮
  6.     r = d([d2].Value) - 1
  7.     If r < 2 Then MsgBox "这已是第一位啦!" Else [d2] = arr(r, 1)
  8. End Sub
复制代码

评分

参与人数 1 +1 收起 理由
liwenhong + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2014-4-15 11:22 | 显示全部楼层
请看附件。

上一条、下一条记录代码有问题!?.rar

126.96 KB, 下载次数: 10

评分

参与人数 1 +1 收起 理由
liwenhong + 1 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-4-15 12:38 | 显示全部楼层
grf1973 发表于 2014-4-15 11:22
请看附件。

        看了您在5楼的附件,代码真是简洁实用啊!但经测试有两个问题:1、“上一条”无动作。2、“下一条”总显示D2的下下一条的记录。还请您再看看!
       非常感谢!!
回复

使用道具 举报

发表于 2014-4-15 13:32 | 显示全部楼层
咦,我这运行一切正常。
回复

使用道具 举报

发表于 2014-4-15 13:35 | 显示全部楼层
我把前面的编号从1开始顺序编了下,试了下一切OK。

上一条、下一条记录代码有问题!?.rar

126.96 KB, 下载次数: 7

评分

参与人数 1 +1 收起 理由
liwenhong + 1 赞一个!

查看全部评分

回复

使用道具 举报

发表于 2014-4-15 13:36 | 显示全部楼层
是你点击按钮的力度不对吧,要不没点上,要不点过头了。。。。。。。。。。。。。
回复

使用道具 举报

 楼主| 发表于 2014-4-15 15:14 | 显示全部楼层
本帖最后由 liwenhong 于 2014-4-15 15:20 编辑
grf1973 发表于 2014-4-15 13:36
是你点击按钮的力度不对吧,要不没点上,要不点过头了。。。。。。。。。。。。。

麻烦你再试一试,先点“下一条”,再点“上一条”,这时上一条就不动作了,而且下一条也是下下一条,总是隔一个记录! 上一条、下一条记录代码有问题!?3.zip (153.88 KB, 下载次数: 9)
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 18:13 , Processed in 0.423029 second(s), 21 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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