Foxtable(狐表)用户栏目专家坐堂 → 请教这条Findrow怎么写?


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

主题:请教这条Findrow怎么写?

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
请教这条Findrow怎么写?  发帖心情 Post By:2012/8/4 10:21:00 [只看该作者]

With CurrentTable
    Dim r As Integer
    r = .FindRow("[日期] = date.today and [用户] = user.name", 0,False ) '从当前行开始查找
    If r >= 0 Then '如果找到的话
        .Position = r '定位到找到的行.
        MessageBox.Show("找到了","哈哈")
    Else
        MessageBox.Show("没找到了","哈哈")
    End If
End With

 

 

FindRow("[日期] = date.today and [用户] = user.name", 0,False )

这句有报错 该怎么表达这个条件呢


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/8/4 10:25:00 [只看该作者]

还有一个问题,提示 不能在排序状态下插入行。怎么解决

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/8/4 13:33:00 [只看该作者]

[日期] = #" & date.today & "#    试试

 

插入行时是不能排序的。

[此贴子已经被作者于2012-8-4 13:33:53编辑过]

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


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/8/4 14:58:00 [只看该作者]

用户已被锁定

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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/8/4 17:43:00 [只看该作者]

楼上正解

findrow 如果找到多行符合条件,是返回第一个找到的行,还是最后一个找到的行呢?

根据我的例子好像是找到最后一行,如果想找到第一符合条件的行怎么办呢?


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/8/4 18:17:00 [只看该作者]

 r = .FindRow("[日期] = #" & Date.today & "# And [用户] = '" & User.Name & "' and isnull([签到],0)" , 0,False )

我又增加了一个isnull条件  又报错了.

FindRow("[日期] = #" & Date.today & "# And [用户] = '" & User.Name & "' and " & isnull([签到],0) , 0,False )  这样写也不行呀

 

还是用 CurrentTable.Current.IsNull("签到") 这样的格式呢

[此贴子已经被作者于2012-8-4 18:26:42编辑过]

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/8/4 21:13:00 [只看该作者]

 表达式中这样: [签到] is null 

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/8/4 21:15:00 [只看该作者]

以下是引用Fotable在2012-8-4 17:43:00的发言:

楼上正解

findrow 如果找到多行符合条件,是返回第一个找到的行,还是最后一个找到的行呢?

根据我的例子好像是找到最后一行,如果想找到第一符合条件的行怎么办呢?

用这个: FindRow(DataRow)


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


加好友 发短信
等级:五尾狐 帖子:1015 积分:6979 威望:0 精华:0 注册:2012/8/1 18:41:00
  发帖心情 Post By:2012/8/4 22:35:00 [只看该作者]

有的时候,我们是没有办法用IsNull函数的,只能用Is Null语句,例如使用表达式筛选时,需要从订单表中筛选出折扣为空的行,那么筛选表达式为:

[折扣] Is Null

关于筛选,会有专门的章节讲述。

IsNull函数可以返回列的值,所以多用于计算,而Is Null语句返回一个逻辑值,所以多用于条件筛选,关于Is Null语句的实际应用,我们将在开发指南中接触到。

如果要判断内容是否不为空,可以加上Not关键词,例如:

[折扣] Is Not Null

  谢谢楼上

 回到顶部