Office中国论坛/Access中国论坛
标题: [求助]假如某个地方连续5次以上数据超标的,如何将这个地方筛选出来? [打印本页]
作者: vicever 时间: 2006-4-14 23:27
标题: [求助]假如某个地方连续5次以上数据超标的,如何将这个地方筛选出来?
我的表中有不同地区很多时间采集到的数据,现在已经根据地区和时间排了序,现在要把那些连续好几次采集的数据均超标的地区的数据全部
我的表中有不同地区很多时间采集到的数据,现在已经根据地区和时间排了序,现在要把那些连续好几次采集的数据均超标的地区的数据全部筛选出来.
不知道怎么在ACCESS中做,要读取各个行的数据,然后留出来判断
如附件的表中的一样,根据时间进行排序后,从上往下进行数据读取,假如在连续的3次测试中,指数都超过了75,则要把这个地区的所有数据全部提取出来。
[attach]17136[/attach]
[此贴子已经被作者于2006-4-14 15:56:15编辑过]
作者: andymark 时间: 2006-4-14 23:35
把例子简化上传
作者: vicever 时间: 2006-4-14 23:59
连续数据的读取,不懂
作者: wwwwa 时间: 2006-4-15 00:06
结果贴出来看看
作者: vicever 时间: 2006-4-15 00:08
结果??我就是想知道怎么得到结果,结果就是包括指标满足和不满足的所有的这个地区的数据都要。
假如这个地区连续三次指标超过75,那么这个地区所有的数据,包括指标没有超过75,但是是这个地区的数据,都要被筛选出来
作者: fan0217 时间: 2006-4-15 00:31
还是把你的例子放上来吧.
作者: vicever 时间: 2006-4-15 00:32
我放上了阿~
作者: andymark 时间: 2006-4-15 01:36
Dim ICount As Integer
Dim RsSql As String
Dim TemRsSql As String
Dim Sql As String
Dim StrName As String
Dim conn As New ADODB.Connection
Set conn = CurrentProject.Connection
TemRsSql = "SELECT First(地区) FROM 表1 GROUP BY 地区 "
TemRs.Open TemRsSql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
Do While Not TemRs.EOF
StrName = TemRs.Fields(0)
RsSql = "select * from 表1 where 表1.地区= '" & Trim(StrName) & "' ORDER BY 表1.测试时间 DESC"
Rs.Open RsSql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
ICount = 0
Do While Not Rs.EOF
If Rs.Fields("指数") > 75 Then
ICount = ICount + 1
Else
ICount = 0
End If
If ICount = 3 Then
MsgBox StrName & ICount
GoTo ABC
End If
Rs.MoveNext
Loop
ABC:
Set Rs = Nothing
TemRs.MoveNext
Loop
[attach]17140[/attach]
[此贴子已经被作者于2006-4-14 19:52:22编辑过]
作者: fan0217 时间: 2006-4-15 02:45
根据你的要求做的,不知道是否是你需要的.[attach]17151[/attach]
[此贴子已经被作者于2006-4-15 10:42:22编辑过]
作者: vicever 时间: 2006-4-19 17:00
标题: 对了~说的就是这个
谢谢了大侠~感激不尽
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) |
Powered by Discuz! X3.3 |