Foxtable(狐表)用户栏目专家坐堂 → 同列中不同行的差


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

主题:同列中不同行的差

帅哥哟,离线,有人找我吗?
莫名的精彩
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:224 威望:0 精华:0 注册:2020/10/27 7:52:00
  发帖心情 Post By:2020/11/13 22:18:00 [只看该作者]

之前就试过了,不行。

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


加好友 发短信
等级:超级版主 帖子:107014 积分:544295 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/14 8:56:00 [只看该作者]

其它地方相应改改咯
……
            If d > 0
                If dict.ContainsKey(d) Then
                    dict(d).add(k)
                    dict(d).add(k+i)
                    dict(d).add(k+i+i)
                Else
                    Dim lst As new List(of Integer)
                    lst.add(k)
                    lst.add(k+i)
                    lst.add(k+i+i)
                    dict.Add(d,lst)
                End If
            End If
        End If
    Next
    For Each key As Integer In dict.Keys
        If dict(key).count > 3 Then
……

 回到顶部
帅哥哟,离线,有人找我吗?
莫名的精彩
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:224 威望:0 精华:0 注册:2020/10/27 7:52:00
  发帖心情 Post By:2020/11/15 9:46:00 [只看该作者]

都有改了,不行。就是查找不到相差一行的数据,是从相差两行开始查找。

 回到顶部
帅哥哟,离线,有人找我吗?
莫名的精彩
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:224 威望:0 精华:0 注册:2020/10/27 7:52:00
  发帖心情 Post By:2020/11/15 9:53:00 [只看该作者]

   把P定义为从2开始,下面就正常了。
  Dim d As Integer = t.Rows(k+i)("第三列") + t.Rows(p+k)("第三列") + t.Rows(k)("第三列")  

 回到顶部
帅哥哟,离线,有人找我吗?
莫名的精彩
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:224 威望:0 精华:0 注册:2020/10/27 7:52:00
  发帖心情 Post By:2020/11/15 20:24:00 [只看该作者]

下面是相隔相同的行的两个数相加,提取和一样的两组或多于两组的数据。现在要改为:

提取和是等差关系的两组或多于两组的数据(等差是1时,两组就提取,如果不是1,就三组提取)

Dim t As Table = Tables("表A")

Dim c As Integer = t.Rows.Count - 1

Dim dict As new Dictionary(of Integer,List(of Integer))

Dim idx As Integer = 0

For i As Integer = 1 To c

    dict.Clear

    For k As Integer = 0 To c

        If k + i < c

            Dim d As Integer = t.Rows(k+i)("第三列") + t.Rows(k)("第三列"

            If d > 0

                If dict.ContainsKey(dThen

                    dict(d).add(k)

                    dict(d).add(k+i)

                Else

                    Dim lst As new List(of Integer)

                    lst.add(k)

                    lst.add(k+i)

                    dict.Add(d,lst)

                End If

            End If

        End If

  Next

    For Each key As Integer In dict.Keys

        If dict(key).count > 2 Then

           Output.Show("= " & key  )

            For Each m As Integer In dict(key)

             '   Output.Show(m)

       Dim r As Row = Tables("表b").AddNew()    

    ' r  = t.Rows(idx)

 'Dim r As Row  = t.Rows(idx)

                Dim r2 As Row = t.Rows(m)

                r("第四列") = r2("第二列")

                r("第五列") = r2("第三列")

                idx += 1

            Next

        End If

    Next

Next


 回到顶部
帅哥哟,离线,有人找我吗?
莫名的精彩
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:224 威望:0 精华:0 注册:2020/10/27 7:52:00
  发帖心情 Post By:2020/11/16 10:56:00 [只看该作者]

是不是目前代码还实现不了?

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


加好友 发短信
等级:超级版主 帖子:107014 积分:544295 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/16 10:59:00 [只看该作者]

搞不定

 回到顶部
总数 17 上一页 1 2