Foxtable(狐表)用户栏目专家坐堂 → 两段代码等效吗?请高手指点?


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

主题:两段代码等效吗?请高手指点?

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


加好友 发短信
等级:六尾狐 帖子:1242 积分:9386 威望:0 精华:0 注册:2013/5/12 9:22:00
两段代码等效吗?请高手指点?  发帖心情 Post By:2013/12/9 15:33:00 [显示全部帖子]

If e.DataRow("gysh") = "汪春阶" Or e.DataRow("gysh") = "管炳芳" Or e.DataRow("gysh") = "王逢礼" Or e.DataRow("gysh") = "陈柏安" Or e.DataRow("gysh") = "陈春桥" Or e.DataRow("gysh") = "叶景辉" Or e.DataRow("gysh") = "赵友玲" Then
    e.DataRow("rkshl") = e.DataRow("grshl")
End If

 

If e.DataRow("gysh") In ("汪春阶","管炳芳","王逢礼","陈柏安","陈春桥","赵友玲","叶景辉","李三","赖红平") Then
    e.DataRow("rkshl") = e.DataRow("grshl")
End If

 

第一段代码执行没错,而后段却报错?


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


加好友 发短信
等级:六尾狐 帖子:1242 积分:9386 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2013/12/9 15:38:00 [显示全部帖子]

上述代码是表中的hc_DataColChanged(某列内容发生变化后,触发该事件,),"hc”是后厨的意思。"gysh"是供应商,"grshl"是购入数量,"rkshl"是入库数量。

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


加好友 发短信
等级:六尾狐 帖子:1242 积分:9386 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2013/12/9 15:48:00 [显示全部帖子]

还是不理解,可帮助文档“条件表达式”中可以这样使用的呀?是的,我用Select Case 实现了第一段代码的简化。

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


加好友 发短信
等级:六尾狐 帖子:1242 积分:9386 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2013/12/9 15:50:00 [显示全部帖子]

示例十一

筛选产品为PD01、PD02、PD03的行:

产品 In ('PD01','PD02','PD03')

或者

产品 = 'PD01' or 产品 = 'PD02' or 产品 = 'PD03'

显然这个时候,用In运算符要简洁很多。

记得数值型的列,值不要用单引号括起来,例如:

[订单号] In (1, 3, 4, 6, 7,12)

而日期型的列,值需要用符号#括起来,例如:

[日期] In (#7/2/2012#, #7/12/2012#, #8/30/2012#)


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


加好友 发短信
等级:六尾狐 帖子:1242 积分:9386 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2013/12/9 16:17:00 [显示全部帖子]

谢谢!慢慢地消化吧。

 回到顶部