表单 -> 公式计算
公式计算
让用户以简明的方式表达表单信息
公式是表单的特殊字段之一,该字段允许用户定义公式,它是一种简明的信息表达方式,公式对数据采集有很多作用,如下:
- 它可以提高填写表单的效率
- 基于某种逻辑自动计算数据,显示内容
- 减少人工计算的错误
设置公式
创建新表单时,您可以从字段列表中拖动公式字段类型,并将其拖放到表单设计中心面板,然后在右侧面板上设置属性。
要输入一个公式,在公式输入文本框中请以 "=" 开头输入需要的公式, 关联的公式会自动提示。
一些例子
- =${'Number'}*${'Number2'}*1.13
- =SUM(${'Number'},${'Number2'})
- =PRODUCT(${'Number'},${'Currency'})
- =INT(YEARFRAC(${'birthdate'},TODAY()))
- =IF(${'Number'}>12, "Teenager", "Kid")
- =CONCATENATE(${'text1'},${'text2'}, ...)
- =TEXT(minutes(${'日期2'}, ${'日期1'}), 'h:mm')
- =INT(MINUTES(${'结束时间'},${'起始时间'})/(60*24))+1
- =IF(AND(${'中标量'}>0, ISBLANK(${'客户经理'})), false, true)
- =IF(AND(${'中标量'}>0, OR(ISBLANK(${'客户经理'}), ISBLANK(${'投标机构'}))), false, true)
- =IF(${'实际买入面值(亿元)'}>0, ${'剩余未交易面值(亿元)'}, IF(${'缴款起息日期(可填暂定日期,确定后修改)'}>TODAY(), 0, ${'申请额度(亿元)'}))
- =IF(AND(${'可投标量(万)'}>0, OR(ISBLANK(${'客户经理'}), ${'客户经理'}='#N/A', ISBLANK(${'投标机构'}))), IF(OR(ISCONTAIN(${'备注'}, "联主"), ISCONTAIN(${'备注'}, "团员"), ISCONTAIN(${'备注'}, "其他主承"), ISCONTAIN(${'备注'}, "发行人指定"), ISCONTAIN(${'备注'}, "A类(无下家)"), ISCONTAIN(${'备注'}, "包销"), ISCONTAIN(${'备注'}, "A类(有下家)")), true, false), true)
下面是一个详细例子:
=concatenate('【',if(${'我司角色'}='联主竞争','竞争性销售-',''),if(${'我司角色'}='牵头竞争','竞争性销售-',''),'我的公司',if(${'我司角色'}='联席主承','-联主,',''),if(${'我司角色'}='牵头主承','-牵头,',''),if(${'发行时间'},TEXT(${'发行时间'},"MM月dd日"),'近期') ,'发行】', ${'债券类型'},',',${'主体/债项评级'},',历史发债:',${'历史发债'},if(${'发行时间'},'
【簿记日】'+TEXT(${'发行时间'},"MM月dd日"),''),if(${'缴款日'},'
【缴款日】'+TEXT(${'缴款日'},"MM月dd日"),''),if(${'起息日'},'
【起息日】'+TEXT(${'起息日'},"MM月dd日"),''), if(${'债券代码'},'
【简称代码】'+${'债券代码'},''))
公式列表
下面列出了目前红小豆数字支持的公式:
- + - * /
Syntax: =(${'Number'}+${'Number2'})*1.1
基本的数据计算 + - * /
如果是多个字符串串联,使用CONCATENATE会有更好的效率。
- ABS
Syntax: =ABS(${'Number'})
返回数字的绝对值
- AVERAGE
Syntax: =AVERAGE(${'Number'},${'Number2'}, ...)
返回参数的平均值(算术平均值)
- CONCATENATE
Syntax: =CONCATENATE(${'text1'},${'text2'}, ...)
将两个或多个文本字符串联接为一个字符串
- DEGREES
Syntax: =DEGREES(${'Number'})
将弧度转换为度
- EXP
Syntax: =EXP(${'Number'})
返回 e 的 n 次幂
- HOUR
Syntax: =HOUR(${'Date1'})
返回时间的小时值
- IF
Syntax: =IF(${'Number'}>12, "Teenager", "Kid")
Syntax: ==IF(${'日期'}>today(), 1, 0)
如果条件计算为真,返回一个值;如果计算为假,返回另一个值。
在条件中,请用 "<>"表示"不等于"。"="表示“等于”。
- INT
Syntax: =INT(${'Number'})
将一个数字取整,把小数点后面的数字去掉。
- ISBLANK
Syntax: =ISBLANK(${'描述'})
如果字段包含是空值,返回true, 否则返回false
- ISCONTAIN
Syntax: =ISCONTAIN(${'描述'}, "竞争")
如果前面字段包含后面字段,返回true, 否则返回false
- MAX
Syntax: =MAX(${'Number'},${'Number2'}, ...)
返回一组值中的最大值
- MIN
Syntax: =MIN(${'Number'},${'Number2'}, ...)
返回一组值中的最小值
- MINUTES
Syntax: =MINUTES(${'Date1'},${'Date2'})
返回两个时间差的分钟值
- MINUTE
Syntax: =MINUTES(${'Date1'})
返回时间的分钟值
- PRODUCT
Syntax: =PRODUCT(${'Number'},${'Number2'}, ...)
返回以参数形式给出的数字相乘的乘积
- RADIANS
Syntax: =RADIANS(${'angle'})
将度数转换为弧度
- RAND
Syntax: =RAND()
返回0到1之间的随机数
- RMBDX
Syntax: =RMBDX(1000)
返回大写的人民币结果,例如:壹仟圆整
- SEARCH
Syntax: =SEARCH("竞争", ${'描述'})
返回后一个文字包含前一个文字的位置,如果没有包含,结果是空值。
- SQRT
Syntax: =SQRT(${'Number'})
返回正的平方根
- SQRTPI
Syntax: =SQRTPI(${'Number'})
返回某数与 pi 的乘积的平方根
- SUM
Syntax: =SUM(${'Number'},${'Number2'}, ...)
返回多个给定值的和
- SUMPRODUCT
Syntax: =SUMPRODUCT(${'Number'},${'Number2'},...)
在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和
- TEXT
Syntax: =TEXT(${'发行时间'}, "yyyy-MM-dd")
把文本转发为指定格式的字符串
- TODAY
Syntax: =TODAY()
返回今天的日期
- UPPER
Syntax: =UPPER(${'string'})
返回大写字母
- WEEKDAY
Syntax: =WEEKDAY(${'发行时间'},'zh')
返回这个日期的星期几
- YEARFRAC
Syntax: =YEARFRAC(${'birthdate'},TODAY())
返回两个日期之间的年数
« PDF 表单
关联数据 »