易表在线答疑技术与交流用户社区 → [求助]if函数


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

主题:[求助]if函数

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


加好友 发短信
等级:超级版主 帖子:8672 积分:1734 威望:0 精华:0 注册:2006/8/11 10:52:00
  发帖心情 Post By:2006/8/29 12:44:00 [只看该作者]

6楼公式有误,按CZY版主的
egd文件下载

 回到顶部
帅哥哟,离线,有人找我吗?
深海的水
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:64 积分:0 威望:0 精华:0 注册:2006/8/18 11:27:00
  发帖心情 Post By:2006/8/29 12:51:00 [只看该作者]

为什么“是否送货”栏不会自动打钩?
公式:FindRow("送货明细","工单编号","=",[基本信息_工单编号])>0中的“>0”是什么意思?

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


加好友 发短信
等级:超级版主 帖子:8672 积分:1734 威望:0 精华:0 注册:2006/8/11 10:52:00
  发帖心情 Post By:2006/8/29 12:55:00 [只看该作者]

那就在[基本信息_工单编号]列操作公式加上重算单元格公式的命令
>0表示在“送货明细”表内有记录

 回到顶部
帅哥哟,离线,有人找我吗?
深海的水
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:64 积分:0 威望:0 精华:0 注册:2006/8/18 11:27:00
  发帖心情 Post By:2006/8/29 13:10:00 [只看该作者]

重算单元格公式命令是否这个:ApplyFormat(Row)?
还是要在记录上点一下才能打钩!

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


加好友 发短信
等级:超级版主 帖子:8672 积分:1734 威望:0 精华:0 注册:2006/8/11 10:52:00
  发帖心情 Post By:2006/8/29 13:15:00 [只看该作者]

RecalcCell
重算指定表指定行的指定列

语法
RecalcCell(Grid,Row,Col,Col...,Option)
Grid    指定表,可以用表名表示,也可以用位置表示。
Row     指定行
Col     指定列,可以用列名称表示,也可以用位置表示,可以设置任意多列。
Option  可选参数,设为-1忽略操作公式,仅仅重算刷新公式和单元格公式。
       通常应该将Option参数设为-1,以便提高计算速度。

例如
RecalcCell(Gridname,Row,"结余",-1)
重算当前表的当前行的结余列,忽略操作公式。

RecalcCell("订单",[订单!row],"数量","金额")
重算订单表当前行的数量和金额两列,包括操作公式。

注意,RecalcCell是唯一用-1表示Option参数的函数!


 回到顶部
帅哥哟,离线,有人找我吗?
深海的水
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:64 积分:0 威望:0 精华:0 注册:2006/8/18 11:27:00
  发帖心情 Post By:2006/8/29 13:33:00 [只看该作者]

RecalcCell(Gridname,Row,"是否送货",-1)
公式有错吗?好象没效果?

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/8/29 13:37:00 [只看该作者]

用RecalcCell恐怕解决不了问题,用RecalcCol试试。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/8/29 13:40:00 [只看该作者]

建议印刷信息表和送货明细建立关联,然后在送货表相关列的操作公式中对印刷信息表关联信息进行自动重算,这样更方便,而且速度更快。

 回到顶部
帅哥哟,离线,有人找我吗?
深海的水
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:64 积分:0 威望:0 精华:0 注册:2006/8/18 11:27:00
  发帖心情 Post By:2006/8/29 13:50:00 [只看该作者]

好提议,但自动重算关联信息用什么函数?

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/8/29 15:07:00 [只看该作者]

自动重算关联表
在默认的情况下,如果某一列的刷新公式引用了关联表中的数据,那么关联表中的数据被修改之后,刷新公式并不会重新计算,要得到最新的计算结果,必须在“表”菜单中,单击“重算全表”。例如在产品表中修改单价,那么订单表中只有新增行(或被重新修改数据的行)才会采用新单价计算金额,如果希望已经输入的数据也采用新单价重算金额,必须在“表”菜单中,单击“重算全表”。可是很多时候,我们希望修改主表中的数据,关联表的数据能够自动更新,怎样实现呢?很简单。

方法一
例如下图,修改产品表的单价,希望订单表的单价自动更新为新的单价,为达次目的,可以按照如下步骤进行设置:
1、选择产品表的“单价”列,在“列”菜单上,单击“操作公式”
2、将“单价列”的操作公式设为:RecalcRGrid("订单表")

经过上述设置,即可实现在产品表修改某个产品的单价,订单表中对应产品的单价会自动更新为最新的单价。RecalcRGrid函数用于重算关联表,而且仅仅重算已经显示出来的关联表(主界面和录入窗口均可)。

普通用户可以暂时忽略下面的方法。

方法二:
方法一必须产品表和订单表同时可见,而且订单表是作为关联表出现的情况下才能有效,如果我们希望不管订单表是否可见,修改产品表的单价,订单表的单价都可以自动更新为新的单价,只需按如下步骤设置。
1、选择产品表的“单价”列,在“列”菜单上,单击“操作公式”
2、将“单价列”的操作公式设为:
ReplaceFor("订单表","单价",[单价],"产品名称","=",[产品名称])
3、或者将“单价列”的操作公式设为:
RecalColFor("订单表","单价","产品名称","=",[产品名称])
前提是订单表的单价列的刷新公式设为:[产品表!单价]

方法三
如果希望不管订单表处于主表状态还是关联表状态的情况,修改订单表中的数量列,产品表中的总数量和金额都可以即时刷新,可按照如下步骤设计:
1、选择产品表,将总数量、总金额的刷新公式分别设为:
SumFor("订单", "数量", "产品名称", "=", [产品名称])
SumFor("订单", "金额", "产品名称", "=", [产品名称])
2、选择订单表,将其数量列的操作公式设为:
if([产品表!RelationRow]>0,RecalcRow("产品表",[产品表!RelationRow]),True)
也可以设为:
if([产品表!RelationRow]>0,RecalcCell("产品表",[产品表!RelationRow],"总数量") And RecalcCell("产品表",[产品表!RelationRow],"总金额"),True)

公式的理解请参考ReplaceFor、RecalcColFor、RecalcCell、操作公式


 回到顶部
总数 20 上一页 1 2