函数说明

来源: 2018/12/06 阅读:25987

「表单流程」线了80+种函数,分别有文本函数、逻辑函数、日期函数、数学函数、系统函数五大类

若想了解高级函数,点我前往了解高级函数
若想查看高级函数的应用案例,点我前往高级函数的应用案例

文本函数

这是专门用于处理字符串文本的一系列函数方法

CONCATENATE

将多个文本合并为一个文本
用法:CONCATENATE(文本1,文本2,文本3...)
返回值类型:文本
参数个数:N
函数配置示例:

效果如下:
图片

LEFT

返回文本值中最左边开始的n个字符
用法: LEFT(文本,字符数)
返回值类型:文本
参数个数:2
示例: 获取员工编号前8位数字(文本,字符数)

[函数配置]:

[效果如下]:

RIGHT

返回文本值中最右边开始的n个字符
用法:RIGHT(文本,字符数)
返回值类型:文本
参数个数:2
示例:获取手机号码后4位数字

函数配置:

效果如下:

LEN

返回文本字符串中的字符个数
用法:LEN(文本)
返回值类型:整数
参数个数:1
示例:获取自我介绍的字数

函数配置:

效果如下:

EXACT

比较两个文本值是否相同,区分大小写
用法:EXACT(文本1,文本2)
返回值类型:逻辑
参数个数:2
示例:判断学生回答是否正确

[函数配置]:

效果如下:

MID

从文本字符串中的指定位置起返回特定个数的字符,起始位置从1开始
用法:MID(文本,起始位置,截取字符数)
返回值类型:文本
参数个数:3
示例:获取文本中从第10位开始连续的3个字符
图片

[函数配置]
图片

T

将参数转换为文本
用法:T(文本)
返回值类型:文本
参数个数:1
示例:T('123')='123'

TEXT

设置数字格式并将其转换为文本
用法:TEXT(数字或日期,格式字符串)
返回值类型:文本
参数个数:2
示例:TEXT(123,'0.00')='123.00'

TRIM

删除文本中的前后空格
用法:TRIM(文本)
返回值类型:文本
参数个数:1
示例:TRIM(' ABCDEFG ')='ABCDEFG'

VALUE

将文本参数转换为数字
用法:VALUE(文本)
返回值类型:整数
参数个数:1
示例:VALUE('012312')=12312

FIND

在一个文本值中查找另一个文本值(区分大小写),可规定起始位置,起始位置从1开始
用法:FIND(被查找文本,查找文本,起始下标)
返回值类型:整数
参数个数:2,3
示例:FIND('DE','ABCDEFG',1)=4

PROPER

将文本值的每个字的首字母大写
用法:PROPER(文本)
返回值类型:文本
参数个数:1
示例:PROPER('do1 cloud platform')=Do1 Cloud Platform

REPLACE

替换文本中的字符
用法:REPLACE(待替换文本,替换起始位置,替换字符数,替换文本)
返回值类型:文本
参数个数:4
示例:REPLACE('企微云平台',1,2,'道一')=道一云平台

REPT

按给定次数重复文本
用法:REPT(文本,重复次数)
返回值类型:文本
参数个数:2
示例:REPT('A',3)=AAA

RMB

使用¥(人名币)货币格式将数字转换为文本
用法:RMB(文本)
返回值类型:文本
参数个数:1
示例:RMB(12)=¥12.00

ROMAN

阿拉伯数字转罗马,数字必须小于等于3999
用法:ROMAN(整数)
返回值类型:文本
参数个数:1
示例:ROMAN(13)=XIII

SEARCH

在一个文本值中查找另一个文本值(不区分大小写)并返回下标,可规定起始位置,起始位置从1开始。
用法:SEARCH(查找文本,在此文本查找,起始位置)
返回值类型:整数
参数个数:2,3
示例:
[函数配置]

[效果演示]

SPLIT

根据参数对字符串进行分离,可与GETPROPERTY函数组合使用。
用法:SPLIT(文本,文本2)
返回值类型:文本数组
参数个数:2
示例:SPLIT('企微云-平台','-')=企微云,平台

SUBSTITUTE

在文本字符串中用新文本替换旧文本
用法:SUBSTITUTE(文本,旧文本,新文本,第N个旧文本)
返回值类型:文本
参数个数:3,4
示例:SUBSTITUTE('企微云平台','企微','道一')=道一云平台

逻辑函数

这是一类返回值为逻辑值true或逻辑值false的函数
true:代表条件判断后的结果为真的,也可以用1表示;
false:代表条件判断后的结果为假的,也可以用0表示。

AND

在参数组中,任何一个参数逻辑值为false,即返回false;只有当所有参数逻辑值为true,才返回true。
用法:AND(逻辑1,逻辑2,逻辑3...)
返回值类型:逻辑
参数个数:N

通常情况下,AND函数常与IF函数组合运用,表达与运算。
示例:

评价=IF(AND(语文成绩>90,数学成绩>90,英语成绩>90) ,'优秀','良好')


[函数配置]

OR

在参数组中,任何一个参数逻辑值为true,即返回true;只有当所有参数逻辑值为false,才返回false。
用法:OR(逻辑1,逻辑2,逻辑3...)
返回值类型:逻辑
参数个数:N

通常情况下,OR函数常与IF函数组合运用,表达或运算。
示例:

IF(OR(语文成绩>90,数学成绩>90,英语成绩>90) ,'优秀','良好')


[函数配置]

IF

判断一个条件是否满足,如果满足返回第一个值,如果不满足则返回第二个值。
用法:IF(逻辑,逻辑为true时的返回值,逻辑为false时的返回值)
返回值类型:与参数有关
参数个数:3

(1)通常情况下,IF函数支持多层嵌套。
示例:60分以下为不合格,60-79分为良好,80分以上为优秀

IF ( 语文成绩 <60,'不合格',IF ( 语文成绩 <80,'良好','优秀') ) 

[函数配置]

(2)IF函数也支持下拉框/单项选择组件。
示例:单项选择题,答对得5分,答错则不得分。


[函数配置]

注意:由于下拉框和单选组件返回的值为文本类型,所以选项中的数字记得要加引号引用~

ISBLANK

如果值为空,则返回 true
用法:ISBLANK(文本)
返回值类型:逻辑
参数个数:1
示例:ISBLANK('')=true

IFERROR

如果表达式错误,返回参数2,否则返回表达式值
用法:IFERROR(表达式,表达式错误时的返回值,表达式正确时的返回值)
返回值类型:与参数有关
参数个数:3
示例:IFERROR(ACOS(2),2,3)=2

ISNUMBER

如果值为数字,则返回 true
用法:ISNUMBER(表达式)
返回值类型:逻辑
参数个数:1
示例:ISNUMBER(12)=true

FALSE

返回逻辑值false
用法:FALSE()
返回值类型:逻辑
参数个数:0
示例:FALSE()=false

TRUE

返回逻辑值true
用法:TRUE()
返回值类型:逻辑
参数个数:0
示例:TRUE()=true

NOT

非,相当于运算符!
用法:NOT(逻辑)
返回值类型:逻辑
参数个数:1
示例:NOT(true)=false

日期函数

这是专门用于处理日期时间的一系列函数方法

DATEADD

计算在添加特定时间间隔(N年/月/日)后的日期。
用法:DATEADD(日期,整数,单位)
返回值类型:日期时间
参数个数:3
单位可选:年数为'Y',月数'M',天数'D',小时'H',分钟'm',秒'S'

示例:初次拜访客户20天后,销售必须再次回访该客户


注意:天数单位参数为'D',月数为'M',年数为'Y'

DATEDIF

计算两个日期之间的天数、月数或年数。 此函数在用于计算年龄的公式中很有用。
用法:DATEDIF(日期1,日期2,单位)
返回值类型:整数
参数个数:3
单位可选:年数为'Y',月数'M',天数'D',小时'H',分钟'm',秒'S'

通常情况下,DATEIF函数常与TODAY函数组合运用,通过调用服务器当前日期,计算准确的日期差。
示例:计算员工的当前工龄时长,当前工龄=今天-入职日期,输出单位为年

注意1:DATEIF函数的第一个参数为减数,第二个参数为被减数,不要混淆哦~
注意2:天数单位参数为'D',月数为'M',年数为'Y'

WEEKDAY

返回星期几(周日为1,由此类推)
用法:WEEKDAY(日期时间)
返回值类型:整数
参数个数:1

通常情况下,WEEKDAY函数常与逻辑函数组合运用。
示例:通过计算出行日期为星期几,判断某车牌号当天是否被限行(简单起见,我们设置限行规则为:周日不允许车牌尾号是1出行,其余情况都允许)

效果如下:

DAY

返回日期
用法:DAY(日期时间)
返回值类型:整数
参数个数:1
示例:DAY('2018-04-24')=24

MONTH

返回月份
用法:MONTH(日期时间)
返回值类型:整数
参数个数:1
示例:MONTH('2018-04-24')=4

YEAR

返回年份
用法:YEAR(日期时间)
返回值类型:整数
参数个数:1
示例:YEAR('2018-04-24')=2018

DATE

返回特定的日期格式
用法:DATE(年,月,日,时,分,秒)
返回值类型:日期
参数个数:1~6
示例:DATE(2018,3,12)='2018-03-12'

DAY、MONTH、YEAR、DATE函数综合运用示例

录入身份证生效日期,可自动计算到期日期(到期日期为年份+20,月份不变,天数-1)

方法:
获取身份证生效日期后,分离成生效年、生效月、生效日,通过运算得出到期年、到期月、到期日,最后通过date函数将其重新组合。

效果如下:

QUARTER

返回季度
用法:QUARTER(日期时间)
返回值类型:整数
参数个数:1
示例:QUARTER('2018-04-24')=2

HOUR

返回小时
用法:HOUR(日期时间)
返回值类型:整数
参数个数:1
示例:HOUR('2018-04-24 12:47:48')=12

MINUTE

返回分钟
用法:MINUTE(日期时间)
返回值类型:整数
参数个数:1
示例:MINUTE('2018-04-24 12:47:48')=47

SECOND

返回秒
用法:SECOND(日期时间)
返回值类型:整数
参数个数:1
示例:SECOND('2018-04-24 12:47:48')=48

TODAY

返回服务器当前日期
用法:TODAY()
返回值类型:日期
参数个数:0
示例:TODAY()='2018-05-15'

NOW

返回服务器当前日期时间
用法:NOW()
返回值类型:日期时间
参数个数:0
示例:NOW()='2018-05-15 10:25:53'

通常情况下,TODAY和NOW函数常与其他时间函数组合运用,具体例子可参考DATEIF函数内容。
TODAY和NOW函数的区别在于:前者返回的是日期,后者返回的是日期时间。

WEEKNUM

返回日期为该年的第几周
用法:WEEKNUM(日期时间)
返回值类型:整数
参数个数:1
示例:WEEKNUM('2018-04-24')=17

WORKDAY

返回指定的若干个工作日之前或之后的日期,可以指定若干个节假日
用法:WORKDAY(日期时间,工作日数,节假日1,节假日2,节假日3...)
返回值类型:日期
参数个数:>=2
示例:WORKDAY('2018-04-24',8,'2018-05-01')='2018-05-07'

NETWORKDAYS

返回两个日期间的工作日天数,可以指定若干个节假日
用法:NETWORKDAYS(起始日期,结束日期,节假日1,节假日2,节假日3...)
返回值类型:整数
参数个数:>=2
示例:NETWORKDAYS('2018-04-24','2018-05-24','2018-05-01')=21

数学函数

这是专门用于处理数字的一系列函数方法

ABS

获取一个数字的绝对值
用法:ABS(数字)
返回值类型:数字
参数个数:1

示例:

效果如下:

AVERAGE

获取所有参数的算术平均值
用法:AVERAGE(数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:求各科成绩的平均分

效果如下:

AVERAGEIF

计算满足条件的一组数值的算数平均值
用法:AVERAGEIF(条件,数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:单科成绩超过60分以上为良好,求良好科目的平均成绩

SUM

统计函数,求和
用法:SUM(数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:利用各科成绩,求总成绩

效果如下:

SUMIF

统计函数,指定条件求和
用法:SUMIF(条件,数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:单科成绩低于60分为不合格,求不合格科目的总成绩

COUNT

返回参数的个数
用法:COUNT(参数1,参数2,参数3...)
返回值类型:整数
参数个数:N

示例:统计子表单个数
函数配置:

效果如下:

COUNTIF

返回数组中满足条件的参数个数
用法:COUNTIF(条件,数字1,数字2,数字3...)
返回值类型:整数
参数个数:N

示例:单科成绩超过80分以上为优秀,求优秀的学科数量
函数配置:

效果如下:

MAX

返回一组数值中的最大值
用法:MAX(数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:求下列单科成绩中最高分的学科成绩
函数配置:

效果如下:

MIN

返回一组数值中的最小值
用法:MIN(数字1,数字2,数字3...)
返回值类型:数字
参数个数:N

示例:求下列单科成绩中最低分的学科成绩
函数配置:

效果如下:

COMBIN

从给定元素数目的集合中提取若干元素的组合数
用法:COMBIN(整数1,整数2)
返回值类型:整数
参数个数:2

示例:某队运动员共有6人,要选出2人配合双打,求有多少种配对方式
函数配置:

效果如下:

INT

将数值向下取整为最接近的整数
用法:INT(数字)
返回值类型:整数
参数个数:1

示例:向下舍入到最近的整数
函数演示:

效果如下:

MOD

返回两数相除的余数,结果的符号与除数相同
用法:MOD(被除数,除数)
返回值类型:数字
参数个数:2

示例:返回数字与4相除的余数
函数演示:

效果如下:

RAND

随机函数,返回大于等于0且小于1的均匀分布随机实数
用法:RAND()
返回值类型:数字
参数个数:0

用法举例:

公式 含义
RAND() 大于等于 0 但小于 1 的非整数的随机数
RAND()*100 大于等于 0 但小于 100 的非整数的随机数
RAND()*(100-1)+1 大于等于 1 但小于 100 的非整数的随机数
INT(RAND()*(100-0)+0) 大于等于 0 但小于 100 的随机整数

RANDBETWEEN

返回整数之间的随机整数
用法:RANDBETWEEN(整数1,整数2)
返回值类型:数字
参数个数:2

示例:自动生成参赛运动员编号
函数演示:

效果如下:

(小技巧:通过字段校验的数据唯一性,还可以生成唯一的编号哦)

ROUND

按指定位数四舍五入
用法:ROUND(数字,位数)
返回值类型:数字
参数个数:2

示例:计算商品单价时,四舍五入保留两位小数

函数演示:

效果如下:

POWER

返回数字乘幂的结果
用法:POWER(数字,位数)
返回值类型:数字
参数个数:2
示例:POWER(2,3)=8 (相当于222,即2的三次方)

PRODUCT

获取一组数值的乘积
用法:PRODUCT(数字1,数字2,数字3...)
返回值类型:数字
参数个数:N
示例:PRODUCT(3,7)=21 (相当于37,效果与运算符相等)

SQRT

平方根
用法:SQRT(数字)
返回值类型:数字
参数个数:1
示例:SQRT(4)=2 (相当于4开2次方)

FACT

返回某数的阶乘,等于 12...参数
用法:FACT(数字)
返回值类型:整数
参数个数:1
示例:FACT(6)=720 (相当于1
23456)

GCD

返回最大公约数
用法:GCD(数字1,数字2,数字3...)
返回值类型:整数
参数个数:N
示例:GCD(6,8)=2

LOG

可以根据指定底数返回数字的对数
用法:LOG(数字,底数)
返回值类型:数字
参数个数:2
示例:LOG(8,2)=3

LN

自然对数
用法:LN(数字)
返回值类型:数字
参数个数:1
示例:LN(0.5)=-0.693147180559945
(注意:LN函数即为底数=10的LOG函数)

系统函数

CHOOSE

根据给定的索引值,从参数中选出相应值。
用法:CHOOSE(整数,值1,值2,值3...)
返回值类型:与参数有关
参数个数:N
示例:CHOOSE(1,'A','B')='A

CREATOR

获取提单人姓名
用法:CREATOR()
返回值类型:文本
参数个数:0
示例:获取提单人姓名

CREATOR_DEPT

获取提单人部门,多个使用","分隔。
用法:CREATOR_DEPT()
返回值类型:文本
参数个数:0
示例:获取提单人部门
[函数配置]

[效果演示]

CREATOR_DEPT_INFO

获取提单人部门信息,与GETPROPERTY函数组合使用,如获取提单人的部门简称:
GETPROPERTY (CREATOR_DEPT_INFO ( ) ,'departmentName' ) 。
[{
"departmentName": "部门简称",
"deptFullName": "部门简称全称",
"id": "部门id",
"parentDepart": "父级部门id",
"wxId": "企业微信部门id",
"wxParentid": "企业微信父级部门id"
}, {
...
}]
用法:CREATOR_DEPT_INFO()
返回值类型:json数组
参数个数:0
示例:CREATOR_DEPT_INFO()
[函数配置]

[效果演示]

CREATOR_INFO

获取提单人信息JSON,与GETPROPERTY函数组合使用,如获取提单人的入职时间:GETPROPERTY(CREATOR_INFO(),'entryTime')。
{
"corpId": "corpId",
"departmentNames": "部门简称(多部门分号';'隔开)",
"deptFullNames": "部门简称(部门级别'->'隔开,多部门分号';'隔开)",
"entryTime": "入职时间",
"headPic": "头像(100x100)",
"leaveTime": "离职时间",
"mobile": "手机",
"orgName": "组织名称",
"personName": "姓名",
"position": "职位",
"userId": "用户id",
"userStatus": "2",
"wxDeptIds": "企业微信部门id|企业微信部门id2",
"wxUserId": "帐号"
}
用法:CREATOR_INFO()
返回值类型:json
参数个数:0
示例:获取提单人入职时间,不满1年无法提交申请
[函数配置]

[效果演示]

CURRENT_USER

获取当前填单人的用户名
用法:CURRENT_USER()
返回值类型:文本
参数个数:0
示例:获取审批人姓名
[函数配置]

[效果演示]

CURRENT_USER_DEPT

获取当前填单人的部门
用法:CURRENT_USER_DEPT()
返回值类型:文本
参数个数:0
示例:CURRENT_USER_DEPT()='信息业务部'

CURRENT_USER_DEPT_INFO

获取当前填单人的部门信息,与GETPROPERTY函数组合使用
[{
"departmentName": "部门简称",
"deptFullName": "部门简称全称",
"id": "部门id",
"parentDepart": "父级部门id",
"wxId": "企业微信部门id",
"wxParentid": "企业微信父级部门id"
}, {
...
}]
用法:CURRENT_USER_DEPT_INFO()
返回值类型:json数组
参数个数:0
示例:GETPROPERTY (CURRENT_USER_DEPT_INFO ( ) ,'departmentName' ) 。

CURRENT_USER_INFO

获取当前填单人信息,与GETPROPERTY函数组合使用,如获取当前填单人的入职时间:GETPROPERTY(CURRENT_USER_INFO(),'entryTime')。
{
"corpId": "corpId",
"departmentNames": "部门简称(多部门分号';'隔开)",
"deptFullNames": "部门简称(部门级别'->'隔开,多部门分号';'隔开)",
"entryTime": "入职时间",
"headPic": "头像(100x100)",
"leaveTime": "离职时间",
"mobile": "手机",
"orgName": "组织名称",
"personName": "姓名",
"position": "职位",
"userId": "用户id",
"userStatus": "2",
"wxDeptIds": "企业微信部门id|企业微信部门id2",
"wxUserId": "帐号"
}
用法:CURRENT_USER_INFO()
返回值类型:json
参数个数:0
示例:CURRENT_USER_INFO()

GETPROPERTY

获取数组或JSON对象的属性
用法:GETPROPERTY(数组或json,下标或属性)
返回值类型:与参数有关
参数个数:2
示例:GETPROPERTY(CREATOR_INFO(),'personName')='张三'
GETPROPERTY(SPLIT('企-微-云-平-台','-'),2)='微'

GETPROVINCE

根据身份证前六位数字返回省市区,可用于身份证产生省市区的默认值
用法:GETPROVINCE()
返回值类型:文本
参数个数:1
示例:根据身份证获取出生地点
[函数配置]

[效果演示]

GET_FORM_ITEM_VALUE

获取当前表单已提交的当前字段聚合值。
参数1为聚合类型,可选值为:
MIN,最小值
MAX,最大值
AVG,平均值(仅限数字)
COUNT,计数
SUM,求和(仅限数字)
FIRST,最早提交
LAST,最晚提交
参数2为是否限定数据范围为提单人:
true为限定,false为不限定
GET_FORM_ITEM_VALUE(()
返回值类型:文本
参数个数:2
示例:获取在最晚提交的明细中当前字段的值
[函数配置]

[效果演示]

IP

返回当前用户的外网IP地址
用法:IP()
返回值类型:文本
参数个数:0
示例:IP()='183.238.79.207'

LOCATIONDIF

计算两个地理位置的距离(单位:米)
用法:LOCATIONDIF(位置1,位置2)
返回值类型:数字
参数个数:2
示例:LOCATIONDIF(地理位置:广东道一信息技术股份有限公司,地理位置:潭村地铁站-C口)=806.9166062813576

REFERER

返回当前用户的请求头中的Referer,告诉服务器用户是从哪个页面链接过来的
用法:REFERER()
返回值类型:文本
参数个数:0
示例:REFERER()='https://wbg.do1.com.cn/'

STR_FORMAT

字符串格式化,通过%s格式化文本
用法:STR_FORMAT(文本模板,文本1,文本2,文本3...)
返回值类型:文本
参数个数:N
示例:字符串格式化

[函数配置]

[效果演示]

SWITCH

根据值列表计算一个值并返回与第一个匹配值对应的结果
用法:SWITCH(表达式,值1,返回值1,值2,返回值2,默认值)
返回值类型:与参数有关
参数个数:N
示例:SWITCH(2,1,'A',2,'B','C')='B'
[函数配置]

[效果演示]

UPPER_RMB

金额大写/UPPERMONEY,金额必须小于1万亿
用法:UPPER_RMB(金额)
返回值类型:文本
参数个数:1
示例:UPPER_RMB('840313.41')='捌拾肆万零叁佰壹拾叁元肆角壹分'

UUID

返回通用唯一识别码,可适用于随机流水号的使用场景
用法:UUID()
返回值类型:文本
参数个数:0
示例:UUID()='babc7572-4483-11e8-9622-6c92bf46f24e'

UUID32

返回通用唯一识别码,去掉横杠
用法:UUID32()
返回值类型:文本
参数个数:0
示例:UUID32()='babc7572448311e896226c92bf46f24e'

函数说明

长按储存图像,分享给朋友

以上内容未解决您的问题?

上一篇:
下一篇: