Foxtable(狐表)用户栏目专家坐堂 → 如何修正代码实现 多行数据指定字段值相同的行保留一行 不相同的行保留 最后当前表中数据指定条件下的数据没有重复行


  共有3200人关注过本帖树形打印复制链接

主题:如何修正代码实现 多行数据指定字段值相同的行保留一行 不相同的行保留 最后当前表中数据指定条件下的数据没有重复行

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111427 积分:567211 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/22 13:46:00 [显示全部帖子]

Dim s As String
dim filter as string
Dim l As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox1")
dim idx as integer = 0
For Each Index As Integer In l.CheckedIndices
dim c as string = l.Items(Index)
    s = s & "|" & c
if filter > "" then filter = filter & " and "
if dataTables(Vars("btname")).datacols(c).IsNumeric
filter = filter & c & "={" & idx & "}"
elseif dataTables(Vars("btname")).datacols(c).IsDate
filter = filter & c & "=#{" & idx & "}#"
else
filter = filter & c & "='{" & idx & "}'"
end if
idx += 1
Next
s = s.trim("|")
dim dr as datarow
生成"比对表"的代码
for each sr() as string in dataTables(Vars("btname")).GetValues(s)
    dr = dataTables(Vars("btname")).find(CExp(filter,sr))
if dr isnot nothing then
            Dim r As Row = Tables("比对表").addnew
            For Each dc As Col In Tables(Vars("btname")).Cols
                r(dc.name) = dr(dc.name)
            Next
end if
next

 回到顶部