Foxtable(狐表)用户栏目专家坐堂 → 一个bug


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

主题:一个bug

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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
一个bug  发帖心情 Post By:2018/8/29 14:35:00 [只看该作者]

Dim t As Table=Tables(vars("当前表"))
Dim fl As String
Dim tb As Table=Tables("筛选条件")
For i As Integer=0 To tb.Rows.Count-1
    Dim bj As String
    Dim r As Row=tb.rows(i)
    Select Case r("比较")
        Case "大于"
            bj=">"
        Case "小于"
            bj="<"
        Case "等于"
            bj="="
        Case "不等于"
            bj="<>"
        Case "类似"
            bj="like"
    End Select

        fl=tb.Rows(i+1)("连接") & " " & r("列名") & bj & r("内容") & " "  &  fl
      
Next
MessageBox.show(fl)
如果只有一列 tb.Rows(i+1)("第一列") 显示为“第一列”即列名 而不是对应的行值
表结构如下

图片点击可在新窗口打开查看此主题相关图片如下:tim截图20180828084847.png
图片点击可在新窗口打开查看


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


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

1、tb.Rows(i+1)("第一列") 为什么要i+1?i才是循环的行;

 

2、你不能判断表格有没有数据?是否为空白行?


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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/8/29 21:53:00 [只看该作者]

我有一个判断 但是判断的结果不是空值 而是第一列 
这个tb.Rows(i+1) 是有前序判断的 我做了简化

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


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

1、判断数据是否为空

 

If Tables("表A").Rows.Count = 0 Then

    msgbox("没有数据")

 

2、判断获取的那一行是不是超过了总行数

 

If Tables("表A").Rows.Count <= i+1 Then

    msgbox("i+1超出了总行数")


 回到顶部