Foxtable(狐表)用户栏目专家坐堂 → 如何用一列显示某列内容出现的次数?


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

主题:如何用一列显示某列内容出现的次数?

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/5/13 20:31:00 [显示全部帖子]

放在DataColChanged事件中试试···

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/5/13 22:00:00 [显示全部帖子]

以下是引用yankunhao在2010-5-13 21:29:00的发言:

早已试过了,不行的,或者再加上一个条件语句判断才可以吧

DataColChanged事件,我测试没问题!!!

 

If e.DataCol.Name = "第一列" Then
    e.dataRow("第二列") =Format(Tables("test").Compute("Count(第一列)","[第一列] = '" & e.dataRow("第一列")  & "'"),"000")
end if


图片点击可在新窗口打开查看此主题相关图片如下:test.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-5-13 22:02:54编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/5/14 13:30:00 [显示全部帖子]

如果数据量不大这样可以吧: DataColChanged     这样相当予每次编辑、修改第一列后都重置一次

If e.DataCol.Name = "第一列" Then   

    Dim dys As List(Of String) = DataTables("test").GetUniqueValues("","第一列")
    For Each dy As String In dys
        dim n as integer = 0
        Dim drs As List(Of DataRow)
        drs = DataTables("test").Select("[第一列] = '" & dy & "'")
        For Each dr As Datarow In drs
            n = n + 1

            dr("第二列") =Format(n,"000")
        Next
    next
    if e.dataRow.IsNull("第一列")
        e.dataRow("第二列") = ""
    end if
end if

[此贴子已经被作者于2010-5-14 13:41:17编辑过]

 回到顶部