以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  根据多值字段 条件输出  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=115116)

--  作者:atlas77
--  发布时间:2018/3/1 12:25:00
--  根据多值字段 条件输出
有一多值字段列,比如为内容为101,102,105,110,111,112,119,120(101到120为循环,比如120接下来的就是101)
我想在
“开始”列输入101时在“计数“列得到2,
“开始”列输入105时在“计数“列得到1,
“开始”列输入110时在“计数“列得到3,
“开始”列输入119时在“计数“列得到4,
“开始”列输入120时在“计数“列得到3,
“开始”列输入115时在“计数“列得到0。
请问如何实现,辛苦大咖们了!

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

--  作者:有点甜
--  发布时间:2018/3/1 12:27:00
--  
不明白你的逻辑,请具体说明。尽量上传实例。
[此贴子已经被作者于2018/3/1 12:27:03编辑过]

--  作者:atlas77
--  发布时间:2018/3/1 12:36: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:47:32编辑过]

--  作者:atlas77
--  发布时间:2018/3/1 13:34: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,就相当于从115
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.foxdb

开始有0个连续的数。

请问如何实现,谢谢


--  作者:atlas77
--  发布时间:2018/3/1 13:47:00
--  
已上传,再看看,谢谢
--  作者:有点甜
--  发布时间: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