Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: excelpxlxy

[已解决]excel vba 中如何使用sql查询上一条下一条记录

[复制链接]
发表于 2013-5-23 17:41 | 显示全部楼层
记录怎么显示的?
我看你的上一条下一条代码就不明白。
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

 楼主| 发表于 2013-5-23 18:21 | 显示全部楼层
hwc2ycy 发表于 2013-5-23 17:41
记录怎么显示的?
我看你的上一条下一条代码就不明白。

记录显示在textbox10 以及旁边的image1
和下面的附加信息栏里面
查询按钮的代码本来是可以用的
上一条下一条是基于sheets(3)的,等于说我以前是想在sheet(3)里实现上一条 下一条
后来总是出错,因为cells无法activate(还有另外一张表中的最近记录是activation的)
所以我想直接用sql查询上一条下一条

(目前上一条按钮是我基于查询按钮 修改的  很乱,你不用看,)

你看这样行吗?你不要去管我原来的代码
如果采用sql查询,要实现上一条、下一条,该如何做。

回复

使用道具 举报

发表于 2013-5-23 20:51 | 显示全部楼层
要是按我的来想,就得推翻重来,不愿意想。
你原来是怎么个想法就怎么个想法。
你SHEET3也不给,你这个表给我的只是测试用的,跟实际肯定有区别的。

要解决问题,就直接上正式的数据。
经常碰到一些发贴,都搞些测试,跟实际的表又有些许不一样,然后他就直接套用,也不会怎么改,接着问题又来了。

回复

使用道具 举报

 楼主| 发表于 2013-5-24 09:47 | 显示全部楼层
hwc2ycy 发表于 2013-5-23 20:51
要是按我的来想,就得推翻重来,不愿意想。
你原来是怎么个想法就怎么个想法。
你SHEET3也不给,你这个表 ...

sheet3就是名为research的sheet
好的 附件稍后上传
回复

使用道具 举报

发表于 2013-5-24 11:08 | 显示全部楼层    本楼为最佳答案   
test.rar (47.48 KB, 下载次数: 115)
回复

使用道具 举报

发表于 2013-5-24 11:09 | 显示全部楼层
excelpxlxy 发表于 2013-5-24 09:47
sheet3就是名为research的sheet
好的 附件稍后上传

我已经改好了,你就看看模拟的吧。

你的SQL语句条件判断的地方逻辑不对。


回复

使用道具 举报

 楼主| 发表于 2013-5-24 13:23 | 显示全部楼层
hwc2ycy 发表于 2013-5-24 11:09
我已经改好了,你就看看模拟的吧。

你的SQL语句条件判断的地方逻辑不对。


非常感谢hwc2ycy
相比之下我的代码太乱了。
多谢多谢
看来要学的还有很多

不过有几个问题我想再弄弄明白,请赐教。
1)“查询按钮”sql语句定义的时候,为什么要用Cells(Rows.Count, 1).End(xlUp).Row,而不直接用usedrange.row或者 .[d65536].End(3).Row

2)lrecord为什么要定义为long类型

3)Fields的属性与fields()的差别是什么

4)strTemp事实上是一个数组是吧?,里面应该有很多条记录。TextBox10.Text = strTemp,为什么会只显示当前记录?

谢谢hwc2ycy
回复

使用道具 举报

发表于 2013-5-24 13:30 | 显示全部楼层
问题1:你说的也是可以的,个人习惯吧。

问题2:只要记录不超过65536,整型也是可以的,习惯。当然,ADO支持的记录数其实也就65536条。

问题3:Fields是字段属性,fields()实际上是fields.items的用法。每一个字段有很多的属性的。像取值就是VALUE,字段名就是NAME
这个你可以看看ADO的资料。

问题4:strTemp是个字符串。textbox10.text是设置TEXTBOX10里的文本,STRTEMP是什么,你在TEXTBOX10就显示什么。

回复

使用道具 举报

发表于 2013-5-24 13:31 | 显示全部楼层
因为你都是查一个工作簿,所以ADO这种连接,就打开一次就够了。
记录集每次通过不同的查询语句来获取。
这样记录集就做为一个模块级变量,方便各个代码调用。
回复

使用道具 举报

发表于 2013-5-24 13:32 | 显示全部楼层
另外,关于ADO的连接字符串,如果只是自己的用的话,可以固定下,如果是还给别人用,就要考虑OFFICE的版本。你这里用的只能在07-13的版本里使用。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-3 17:39 , Processed in 0.240694 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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