Foxtable(狐表)用户栏目专家坐堂 → 如何把列值改成数组


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

主题:如何把列值改成数组

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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
如何把列值改成数组  发帖心情 Post By:2023/4/11 12:24:00 [只看该作者]

 Dim str As String = e.form.Controls("ComboBox1").text
Dim a As Table = Tables("授权")
For i As Integer = 0 To a.Rows.count - 1
    Dim nr As Row = a.Rows(i)
    Dim Names As New List(Of String)
    Dim nms1() As String = nr("用户").split(",")
    'MessageBox.Show(Names)
    Names.AddRange(nms1)
    If Names.Contains(str) = False Then
        Names.Add(str)
        Else
          Names.Remove(str)
    End If
Next
我想把列值变成数组,再运用数组进行判断是否包含某个字符,再进行增删
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20230411122122.png
图片点击可在新窗口打开查看

下面句出问题了

Dim nms1() As String = nr("用户").split(",")


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


加好友 发短信
等级:超级版主 帖子:110561 积分:562695 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/11 13:37:00 [只看该作者]

帮助搜“空值”,学一下怎么判断单元格是否是空值

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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/4/11 13:54:00 [只看该作者]

Dim str As String = e.form.Controls("ComboBox1").text
Dim a As Table = Tables("授权")
For i As Integer = 0 To a.Rows.count - 1
    Dim nr As Row = a.Rows(i)
    Dim Names As New List(Of String)
    If  nr("用户") IsNot Nothing Then
        Dim nms1() As String = nr("用户").split(",")
        'MessageBox.Show(Names)
        Names.AddRange(nms1)
        If Names.Contains(str) = False Then
            Names.Add(str)
        Else
            Names.Remove(str)
        End If
    End If
Next

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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/4/11 13:56:00 [只看该作者]

 Dim nms1() As String = nr("用户").split(",")

现在应该是怎样才能把列值改成数组


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


加好友 发短信
等级:超级版主 帖子:110561 积分:562695 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/11 13:58:00 [只看该作者]

只要单元格有值,4楼这个代码没有问题。执行有什么错误?

另外空值判断用法还是不正确,多看看帮助吧

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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/4/11 13:59:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/4/11 14:00:00 [只看该作者]

就是没有反应的,我用MEBOX测试过是这句有问题

 


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


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

代码生成的结果没有用到任何地方,当然没有反应了。想做什么功能?

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


加好友 发短信
等级:八尾狐 帖子:1989 积分:6291 威望:0 精华:0 注册:2017/11/8 17:37:00
  发帖心情 Post By:2023/4/11 14:16:00 [只看该作者]

Dim str As String = e.form.Controls("ComboBox1").text
Dim a As Table = Tables("授权")
For i As Integer = 0 To a.Rows.count - 1
    Dim nr As Row = a.Rows(i)
    Dim Names As New List(Of String)
    If nr("用户") IsNot Nothing Then
        Dim nms1() As String = nr("用户").split(",")
        Names.AddRange(nms1)
        If Names.Contains(str) = False Then
            Names.Add(str)
            nr("用户") = Names
        Else
            Names.Remove(str)
            nr("用户") = Names
        End If
    End If
Next

生成的结果放在用户列


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


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

没看懂,用户列拆分出来又返回用户列?

从冰箱里拿出一个蛋,然后再放回去,只是为了过过手瘾吗!

另外AddRange、Contains、Remove是集合的用法,不是数组的用法

 回到顶部
总数 15 1 2 下一页