1.常用数字函数:
round(a,b) a为计算列(下同),四舍五入,保留b位小数
roundup(a,b) 向上取数,保留b位小数
rounddown(a,b)向下取数,保留b位小数
int(a) 向下取整
divide(分子,分母,c) c为可选项,意思是当分母为0时,返回c(常量),当分母为0不填c时默认返回空
rand() 返回0-1之间的随机数
randbetween(num1,num2) 返回num1-num2之间的随机数
案例如下:
销售额2 = round([销售额],2)
销售额3 = roundup([销售额],2)
销售额4 = ROUNDDOWN([销售额],2)
销售额5 = int([销售额])
成本 = divide([销售额],3.34,0)
成本1 = divide([销售额],0,0)
随机数 = rand()
范围随机数 = randbetween(0,19)
2.常用文本函数:
left(文本列,指定字符数) 文本字符串,自左向右提取指定字符数
right(文本列,指定字符数) 文本字符串,自右向左提取指定字符数
find(要查找的字符,字符所在列,查找起始位置,查不到时返回值) 返回查找到的第一个内容所在位置
mid(文本列,提取的起始位置,返回的字符数) 返回从起始位置开始指定字符数
substitute(文本列,要替换的旧文本,替换的新文本,替换第几个匹配到的内容)
format(文本,指定的格式) 将文本按指定的格式返回
3.常用日期函数:
year(日期) 返回日期的年份,该值为四位整数
month(日期) 返回日期的月份,1-12之间的数字
day(日期) 返回日期中该月的第几天,1-31之间的数字
date(year,month,day) 以日期格式返回拼接的日期
hour(日期时间/datetime) 返回日期时间中的小时,0-23之间的数字
minute(datetime) 返回日期时间中的分钟,0-59之间的数字
second(datetime) 返回日期时间中的秒,0-59之间的数字
time(hour,minute,second) 返回日期时间(日期固定为1899/12/30)
edate(开始日期,月份数) 返回在开始日期加或减指定的月份数之后的日期
eomonth(开始日期,月份数) 返回在开始日期加或减指定的月份数之后的当月最后一天日期,为日期时间格式
today() 返回今天的日期,格式为日期时间
datediff(日期1,日期2,间隔) 返回输入的两个日期之间的间隔(第三个参数可以为:年,季度,月,星期,天,小时,分钟,秒)
案例如下:
4.常用逻辑函数
if(条件,结果1,结果2) 如果条件为true,返回结果1,否则返回结果2
and(条件1,条件2) 两个条件都为true,则结果为true,可结合if使用
or(条件1,条件2) 其中一个条件为true,则结果为true,可结合if使用
switch(表达式,值1,结果1,值2,结果2,...[else]) 如果表达式的值与后面的值相同,则返回该值对应的结果,如果没有匹配的值,则返回else的内容(else内容没写,表达式值也没匹配到,则返回空)
案例如下:
以上是关于新建列时的常用函数,接下来是新建度量值的函数:
聚合函数:
sum()、count()、average()、max()、min()等
2.calculate计算式:
calculate(表达式,条件1,条件2....)
3.all和filter函数:
all([TablenameOrColumn],[ColumnName1]...) 是对表计算时,清除筛选功能
filter(table,filter) 在表中加入筛选条件,对表进行筛选
4.calendar函数:
calendar(开始日期,结束日期) 指返回一个包含一组连续日期的表
案例如下:
供应商0101021最大销量 = calculate(max([销售数量]),filter('Sheet1','Sheet1'[供应商编码]=0101021)) 会筛选出最大值,同时最大值对应的一行数据也会关联上