Foxtable(狐表)用户栏目专家坐堂 → [求助]统计字符数量


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

主题:[求助]统计字符数量

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/2 12:29:00 [只看该作者]

Dim dic As new Dictionary(of String, Integer)
For Each r As DataRow In e.DataTable.DataRows
    For Each cname As String in "第一列,第二列,第三列".split(",")
        If r.Isnull(cname) = False Then
            If dic.ContainsKey(r(cname)) = False Then
                dic.Add(r(cname), 1)
            Else
                dic(r(cname)) += 1
            End If
        End If
    Next
Next
For Each key As String In dic.Keys
    Dim fdr As DataRow = DataTables("表B").find("第一列 = '" & key & "'")
    If fdr Is Nothing Then
        fdr = DataTables("表B").addnew
        fdr("第一列") = key
    End If
    fdr("第三列") = dic(key)
Next


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


加好友 发短信
等级:小狐 帖子:316 积分:2193 威望:0 精华:0 注册:2018/2/4 9:37:00
  发帖心情 Post By:2018/4/2 12:50:00 [只看该作者]

甜老师  在给帮忙看一下   表A  我需要用到筛选  但是表B  不会一起筛选    还有一个问题就是  表A  数据删除     表B  统计数据还在  这样不行

 

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:测试 (1).table


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/2 14:34:00 [只看该作者]

清空datacolchanged事件,项目属性maintablechanged事件写代码

 

Dim dic As new Dictionary(of String, Integer)
For Each r As DataRow In e.DataTable.DataRows
    For Each cname As String In "第一列,第二列,第三列".split(",")
        If r.Isnull(cname) = False Then
            If dic.ContainsKey(r(cname)) = False Then
                dic.Add(r(cname), 1)
            Else
                dic(r(cname)) += 1
            End If
        End If
    Next
Next
For Each key As String In dic.Keys
    Dim fdr As DataRow = DataTables("表B").find("第一列 = '" & key & "'")
    If fdr Is Nothing Then
        fdr = DataTables("表B").addnew
        fdr("第一列") = key
    End If
    fdr("第三列") = dic(key)
Next


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


加好友 发短信
等级:小狐 帖子:316 积分:2193 威望:0 精华:0 注册:2018/2/4 9:37:00
  发帖心情 Post By:2018/4/2 22:11:00 [只看该作者]


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

 回到顶部
帅哥,在线噢!
有点蓝
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106055 积分:539368 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/2 22:18:00 [只看该作者]

关闭项目,删除项目里的bin目录,然后重新打开项目

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


加好友 发短信
等级:小狐 帖子:316 积分:2193 威望:0 精华:0 注册:2018/2/4 9:37:00
  发帖心情 Post By:2018/4/2 22:25:00 [只看该作者]

是甜老师的这个代码出错  给帮忙改下

 

清空datacolchanged事件,项目属性maintablechanged事件写代码

 

Dim dic As new Dictionary(of String, Integer)
For Each r As DataRow In DataTables("表A").DataRows
    For Each cname As String In "第一列,第二列,第三列".split(",")
        If r.Isnull(cname) = False Then
            If dic.ContainsKey(r(cname)) = False Then
                dic.Add(r(cname), 1)
            Else
                dic(r(cname)) += 1
            End If
        End If
    Next
Next
For Each key As String In dic.Keys
    Dim fdr As DataRow = DataTables("表B").find("第一列 = '" & key & "'")
    If fdr Is Nothing Then
        fdr = DataTables("表B").addnew
        fdr("第一列") = key
    End If
    fdr("第三列") = dic(key)
Next


 回到顶部
帅哥,在线噢!
有点蓝
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106055 积分:539368 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/2 22:55:00 [只看该作者]

代码没有问题。如果是24楼的错误,就是25楼的解决方法

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


加好友 发短信
等级:小狐 帖子:316 积分:2193 威望:0 精华:0 注册:2018/2/4 9:37:00
  发帖心情 Post By:2018/4/3 12:25:00 [只看该作者]

我照你说的弄了    还是不行   

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/3 12:31:00 [只看该作者]

Dim dic As new Dictionary(of String, Integer)
For Each r As DataRow In  DataTables("表a").DataRows
    For Each cname As String In "第一列,第二列,第三列".split(",")
        If r.Isnull(cname) = False Then
            If dic.ContainsKey(r(cname)) = False Then
                dic.Add(r(cname), 1)
            Else
                dic(r(cname)) += 1
            End If
        End If
    Next
Next
For Each key As String In dic.Keys
    Dim fdr As DataRow = DataTables("表B").find("第一列 = '" & key & "'")
    If fdr Is Nothing Then
        fdr = DataTables("表B").addnew
        fdr("第一列") = key
    End If
    fdr("第三列") = dic(key)
Next

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


加好友 发短信
等级:小狐 帖子:316 积分:2193 威望:0 精华:0 注册:2018/2/4 9:37:00
  发帖心情 Post By:2018/4/3 12:38:00 [只看该作者]

这个只是代码  换了一个地方   我说的问题还是存在       第一  表A  数据   删除以后   表B的统计数据  还在
第二  表A通过第四列的内容筛选以后    表B的数据还是统计全部的  并不是表A筛选后的数据  统计

 回到顶部
总数 32 上一页 1 2 3 4 下一页