以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教重复值的一个算法  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=141057)

--  作者:foxtablefans
--  发布时间:2019/9/20 11:56:00
--  请教重复值的一个算法
表的结构是 出席日期 出席人 场号 出席否

现在想实现 如果某个人在某天的某场演出中出席过 出席次数就算1  但是同一个场号即使出席多次 都只算1

比如张三在918 919都出席过了A001号演出 那么第一次的出席次数算1 第二次就不再计算出席次数

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190920115450.png
图片点击可在新窗口打开查看



--  作者:有点蓝
--  发布时间:2019/9/20 13:34:00
--  
试试

Dim t As Table = Tables("某表")
t.filter = "出席否=\'Y\'"
t.sort = "出席人,场号,出席日期"
Dim r1 As Row
r1 = t.rows(0)
r1("出席多次") = 1
Dim r2 As Row
For i As Integer =1 To t.rows.count - 1
    r2 = t.rows(i)
    If r2("出席人") = r1("出席人")  AndAlso  r2("场号") = r1("场号")
        r2("出席多次") = 0
    Else
        r2("出席多次") = 1
    End If
    r1 = r2
Next