Ragic支持条件方程序,需要提醒的是条件公式,字段输入型式会改变公式在某些情况下如何计算。
举例来说,当使用在附带条件的自由输入或是选择字段,.RAW需要被加入到该字段名称(请参阅下列段落”有IF功能的附带条件”)。
IF公式
IF公式传回一个值,如果一个特定的情况被判定为TRUE,或是如果另一个值被判定为FALSE。
公式 | 句法 |
---|---|
IF | IF(value==condition,[value_if_true],[value_if_false]) |
范例
简单的例子: IF(A2==10,10,0)
如果该字段A2等于10,这个值在这个字段将会是10。若A2出现其他的值,值在这个字段就会是0。
以一个条件值作为结果: IF(A1==1,'true','false')
如果值在该字段A1等于1,值在这个字段将会是”true”。若A1出现其他的值,值在这个字段就会是false。
实际应用: IF(A2>=60,'yes','no')
如果值在该字段A1等于或大于60,值在这个字段”满足老人折扣的条件吗”将会是”Yes”,否则值在这个字段就会是”No”。
注记
Ragic仍然支持IF功能的旧句法。
Value=='condition'?'[value_if_true]':'[value_if_false]'
范例: A1=='open'?'O':'C'
如果A1 是 open, 则出现O,如果不是则出现C。
附带IF公式条件
如果你想要在数字或选项字段参阅别栏的字符串值,请在该字段后面加.RAW。
句法 |
---|
IF(value.RAW='string condition',[value_if_true],[value_if_false]) |
范例
简单的例子: IF(A1.RAW=='Active',1,0)
如果字段A1的值是”Active”,该字段值就会是1。若A1出现其他的值,值在这个字段就会是0。
以一个条件值作为结果: IF(A1.RAW=='Pending','Open','Closed')
如果字段A1值是”Pending”,值在这个字段将会是”Open”。若A1出现其他的值,值在这个字段就会是”Closed”。
LOOKUP公式
你也可以使用LOOKUP公式在你希望附加条件的字段上,增加针对各个特殊条件的处理。
公式 | 句法 |
---|---|
LOOKUP | LOOKUP(value,[lookup_list],[result_list]) |
在lookup_list搜索值,然后传回值所在result_list的位置。
值是在lookup_list内搜索的值。
lookup_list是一个数组,如[0,100,500],LOOKUP功能在这清单内搜索值。
result_list是自选的,它和lookup_list相同,如['Small','Medium','Large']。如果result_list参数被省略,LOOKUP功能会传回在lookup_list的值。如果LOOKUP功能不能找到确切符合的值,它会选择回传在result_list内,小于或等于值之中最大的值。如果值小于所有在result_list里的值,则LOOKUP功能会传回空的条件。
范例
简单的例子: LOOKUP(A1,[0,45,65],['Small','Medium','Large'])
如果该字段A1的值在0~45之间,则该字段值就会是Small,若值在45~65之间则会是Medium,若值大于65则会是Large。
多重字段范例: LOOKUP(A1,[0,45,65],[A3+A4,B5,B6])
如果A1在0~45之间,值是A3+A4;在45~65之间值是B5;超过65,则值将会是B6。
AND公式
当条件全部满足时传回TRUE,在一个或多个条件不满足时传回FALSE。
公式 | 句法 |
---|---|
AND | AND(logical1,[logical2],...) |
AND公式需要包含下列几项参数:
logical1是必要的,这是第一项需要判断回传值为TRUE或FALSE的条件。
logical2是非必要的,其他条件在被判断时,也会影响回传值为TRUE或FALSE。
OR公式
当任一个条件满足时传回TRUE,在全部条件都不满足时传回FLASE。
公式 | 句法 |
---|---|
OR | OR(logical1,[logical2],...) |
OR公式需要包含下列几项参数:
logical1是必要的,其他逻辑条件像是logical2则非必要,这是第一项需要判断回传值为TRUE或FALSE的条件。