Foxtable(狐表)用户栏目专家坐堂 → 多值字段计数


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

主题:多值字段计数

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


加好友 发短信
等级:幼狐 帖子:53 积分:724 威望:0 精华:0 注册:2017/9/13 19:13:00
多值字段计数  发帖心情 Post By:2018/3/1 12:49:00 [只看该作者]

设定101到120为循环,120结束后接下来继续101,如设定101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,101,102,103……要设定这样的顺序。

有一多值字段列,比如为内容为101,102,105,110,111,112,119,120。

“开始”列输入101时在“计数“列得到2,就相当于从101开始有2个连续的数,
“开始”列输入105时在“计数“列得到1,就相当于从105开始有1个连续的数,
“开始”列输入110时在“计数“列得到3,就相当于从110开始有3个连续的数,
“开始”列输入119时在“计数“列得到4,就相当于从119开始有4个连续的数,
“开始”列输入120时在“计数“列得到3,就相当于从120开始有3个连续的数,
“开始”列输入115时在“计数“列得到0,就相当于从101开始有0个连续的数。

请问如何实现,谢谢
[此贴子已经被作者于2018/3/1 12:49:00编辑过]

 回到顶部
帅哥,在线噢!
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4632 积分:33804 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2018/3/1 13:10:00 [只看该作者]

不明白逻辑,最好上例子+详细说明

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


加好友 发短信
等级:幼狐 帖子:53 积分:724 威望:0 精华:0 注册:2017/9/13 19:13:00
  发帖心情 Post By:2018/3/1 13:30:00 [只看该作者]

设定101到120为循环,120结束后接下来继续101,如设定101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,101,102,103……要设定这样的顺序。

有一多值字段列,比如为内容为101,102,105,110,111,112,119,120。

“开始”列输入101时在“计数“列得到2,就相当于从101开始有2个连续的数(101,102)
“开始”列输入105时在“计数“列得到1,就相当于从105开始有1个连续的数(105),
“开始”列输入110时在“计数“列得到3,就相当于从110开始有3个连续的数(110,111,112),
“开始”列输入119时在“计数“列得到4,就相当于从119开始有4个连续的数(119,
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.foxdb

120,101,102),
“开始”列输入120时在“计数“列得到3,就相当于从120开始有3个连续的数(120,101,102),
“开始”列输入115时在“计数“列得到0,就相当于从115开始有0个连续的数(无)。

请问如何实现,谢谢

[此贴子已经被作者于2018/3/1 13:32:15编辑过]

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


加好友 发短信
等级:幼狐 帖子:53 积分:724 威望:0 精华:0 注册:2017/9/13 19:13:00
  发帖心情 Post By:2018/3/1 13:46:00 [只看该作者]

麻烦再看看
[此贴子已经被作者于2018/3/1 13:46:38编辑过]

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


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

Select Case e.DataCol.name
    Case "序号开始数","内容"
        Dim tmp As Integer = e.DataRow("序号开始数")
        If tmp >= 101 Then
            Dim count As Integer = 0
            For i As Integer = 1 To 20
                Dim ii As Integer = tmp + i - 1
                If ii > 120 Then ii = ii-20
                If e.DataRow("内容").contains(ii) = False Then
                    Exit For
                Else
                    count += 1
                End If
            Next
            e.DataRow("从序号开始数计数起连续数") = count
        Else
            e.DataRow("从序号开始数计数起连续数") = 0
        End If
End Select

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


加好友 发短信
等级:幼狐 帖子:53 积分:724 威望:0 精华:0 注册:2017/9/13 19:13:00
  发帖心情 Post By:2018/3/2 10:36:00 [只看该作者]

OK,谢谢

 回到顶部