Foxtable(狐表)用户栏目专家坐堂 → 关于getvalues的使用


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

主题:关于getvalues的使用

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


加好友 发短信
等级:幼狐 帖子:104 积分:1139 威望:0 精华:0 注册:2017/9/13 8:43:00
关于getvalues的使用  发帖心情 Post By:2018/3/15 16:34:00 [只看该作者]

老师,请问下面这段代码哪里有问题??

Dim Arys As List(Of String()) = DataTables("明细").GetValues("月|材料") '列名用符号|分割
'注意循环变量是字符型数组,所以类型是String(),而不是String
For Each s As String() In DataTables("期初").GetValues("月|材料")
    If arys.Contains(s) = False Then
        arys.add(s)
    End If
Next

例如,在“明细”表中 月 = 2018 ,材料 = A01 ;在“期初”表中 月 = 2018 ,材料 = A01。为什么执行上面代码时
还会将(2018,A01)添加到arys中呢?代码改怎么改才不会添加重复值呢??

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


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

不能这样比较的。

 

Dim Arys As List(Of String()) = DataTables("明细").GetValues("月|材料") '列名用符号|分割
'注意循环变量是字符型数组,所以类型是String(),而不是String
For Each s As String() In DataTables("期初").GetValues("月|材料")
    Dim contains As Boolean = False
    For Each ary() As String In arys
        If ary(0) = s(0) AndAlso ary(1) = s(1) Then
            contains = True
            Exit For
        End If
    Next
    If contains = False Then
        arys.add(s)
    End If
Next


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


加好友 发短信
等级:幼狐 帖子:104 积分:1139 威望:0 精华:0 注册:2017/9/13 8:43:00
  发帖心情 Post By:2018/3/15 17:09:00 [只看该作者]

明白,谢啦

 回到顶部