一.ABS
1.概要
書式 | ABS(number) | 引数の絶対値を返す 絶対値はプラス/マイナス記号のない数値 |
---|---|---|
パラメータ | number | 絶対値を求めたい任意の実数 |
戻り値 | number | - |
2.使用例
数式 | 結果 |
---|---|
ABS(-1.5) | 1.5 |
ABS(0) | 0 |
ABS(2.5) | 2.5 |
二. BITNOT
1.概要
書式 | ABS(number) | 引数のビット単位の否定を表す整数を返す |
---|---|---|
パラメータ | number | 転換した10進数 |
戻り値 | number | - |
2.使用例
数式 | 結果 |
---|---|
BITNOT(3) | -4 |
BITNOT(12) | -13 |
三. BITOPERATION
1.概要
書式 | BITOPERATIOIN(int,int,op) | ビット演算、二つの10進整数がopに基づいて計算した結果を返す int:10進整数 op:ビット演算子 例:"&"(AND),"|"(OR),"^"(XOR),"<<"(左シフト),">>"(右シフト)。 |
---|---|---|
パラメータ | number | 転換した10進数 |
戻り値 | number | - |
2.使用例
数式 | 結果 | 備考 |
---|---|---|
BITOPERATION(4,2,"&") | 0 | 4と2がAND演算をする |
BITOPERATION(4,2,"|") | 6 | 4と2がOR演算をする |
BITOPERATION(4,2,"^") | 6 | 4と2がXOR演算をする |
BITOPERATION(4,2,"<<") | 16 | 4と2が左シフト演算をする |
BITOPERATION(4,2,">>") | 1 | 4と2が右シフト演算をする |
BITOPERATION(4,2,"^~") | -7 | 4と2がXNOR演算をする |
四.CEILING
1.概要
書式 | CEILING(number) | 引数の倍数のうち、引数にもっとも近い値に切り上げられる |
---|---|---|
パラメータ | number | 丸めの対象となる数値 |
戻り値 | number | 整数 |
2.使用例
数式 | 結果 |
---|---|
CEILING(-2.5) | -3 |
CEILING(0.5) | 1 |
五.COMBIN
1.概要
書式 | COMBIN(number,number_chosen) | 指定された個数を選択するときの組み合わせの数を返す |
---|---|---|
パラメータ1 | number | 抜き取る対象の全体の正整数 |
パラメータ2 | number_chosen | 抜き取る組み合わせ 1 組に含まれる項目の正整数 |
戻り値 | number | 整数 |
注:Number>=numberは必須条件、さもなければ、計算する時にエラーが発生してしまうことになります。仮にnumber=n、number_chosen= kとすると、COMBIN(n,k)=Cnk=n!/(k!(n-k)!)
2.使用例
数式 | 結果 | 備考 |
---|---|---|
COMBIN(5,2) | 10 | 説明:5人の選手から、2 人 1 組のチームを作る場合の組み合わせの数を求めます。 |
六.COUNT
1.概要
書式 | COUNT(value1,value2,…) | 引数リストの各項目に含まれる数値の個数の合計を返す |
---|---|---|
パラメータ | value | 個別の値、または配列値 |
戻り値 | number | 整数 |
注1:数値、日付、またはテキストで評される数字引数は計算されます。
注2:数値に変換できないエラー値またはテキスト値パラメータは計算されません。
注3:配列または参照パラメーターに解析可能なテキスト値、論理値、ゼロ値、または空白セルが含まれている場合、これらの値は計算されます、解析できないテキスト値はは計算されません。
2.使用例
数式 | 結果 |
---|---|
COUNT(0,0,0,0,0,0) | 6 |
七.EVEN
1.概要
書式 | EVEN(number) | 引数を最も近い偶数に切り上げた数値を返す |
---|---|---|
パラメータ | number | 丸めの対象となる数値 |
戻り値 | number | 偶整数 |
注:数値が偶数の場合、切り上げは行われません。
2.使用例
数式 | 結果 |
---|---|
EVEN(1.5) | 4 |
EVEN(2) | 2 |
EVEN(-1) | ‐2 |
八.EXP
1.概要
書式 | EXP(number) | e を底とする引数のべき乗を返す |
---|---|---|
パラメータ | number | e を底とするべき乗の実数 |
戻り値 | number |
注:常数 e=2.71828182845904、EXP関数はLN関数は逆関数です。
2.使用例
数式 | 結果 |
---|---|
EXP(0) | 1 |
EXP(3) | 20.08553692 |
EXP(LN(2)) | 2 |
九.FACT
FACT(number):返回数的阶乘,一个数的阶乘等于 0!*1*2*3*...*number(其中0!=1)。 number:要计算其阶乘的非负数。如果输入的 number不是整数,则截尾取整。
示例:
FACT(1)等于 1 。
FACT(1.9)等于 FACT(1) 等于 1。
FACT(5)等于 1*2*3*4*5 等于 120。
11. FLOOR
FLOOR(number):将参数number去尾舍入,即舍弃掉参数 number 后面的小数部分的数值。
注: 当number为非数值型的参数时,函数 FLOOR 返回 0。
示例:
FLOOR(2.5)等于 2。
FLOOR(-3.5)等于 -3。
FLOOR(0.143,0.03)等于 0。
FLOOR(hello)等于 0。
12. INT
INT(number):返回数字下舍入(数值减小的方向)后最接近的整数值。 Number:需要下舍入为整数的实数。
示例:
INT(4.8)等于 4。
INT(-4.8)等于 -5。
INT(4.3)等于 4。
公式 INT(A1) 将返回 A1 单元格中的一个正实数的整数数部分
13. LN
LN(number):返回一个数的自然对数。自然对数以常数项 e(2.71828182845904)为底。 number:是用于计算其自然对数的正实数。
示例:
LN(86)等于 4.45437。
LN(2.7182818)等于 1。
LN(EXP(3))等于 3。
14. LOG
LOG(number,base):按指定的任意底数,返回数值的对数。Number:需要求对数的正实数。 Base:对数的底数。缺省默认值为 10。
示例:
LOG(16,2)等于 4。
LOG(10)等于 1。
LOG(24,3)等于 2.892789261。
15. LOG10
LOG10(number):LOG10(number):返回以 10 为底的对数。number:用于常用对数计算的正实数。
示例:
LOG10(86)等于 1.934498451。
LOG10(10)等于 1。
18. MOD
MOD(number,divisor):返回两数相除的余数。结果的正负号与除数相同。 number:为被除数。 divisor:为除数。
示例:
MOD(3, 2)等于 1 。
MOD(-3, 2)等于 1 。
MOD(3, -2)等于 -1 。
MOD(-3, -2)等于 -1。
注:小数的情况比较特殊。例:mod(49.5, 5.5)=4,并非我们的期望值 0,我们可以采取其变通的方法:mod(49.5*10, 5.5*10)=0;mod(49.6, 5.5)=4,并非我们的期望值 0.1,同理:mod(49.6*10, 5.5*10)/10=0.1 //将其先取整再求余!
19. ODD
ODD(number):是将一个不是奇数的数值向上舍入为最接近的奇数。 number:是要舍入求奇的数值。
注:不论正负号如何,数值都朝着远离0的方向舍入。如果 number恰好是奇数,则不须进行任何舍入处理。
示例:
ODD(1.5)等于 3。
ODD(3)等于 3。
ODD(2)等于 3。
ODD(-1)等于 -1。
20. PI
PI:是一个数学常量,函数返回精确到 15 位的数值 3.141592653589793。
示例:
SIN(PI()/2)等于 1。( 计算圆的面积的公式: S=PI()*(r^2),其中 S 为圆的面积,R 为圆的半径。)
21. POWER
POWER(number,power):返回指定数字的乘幂。 Number:底数,可以为任意实数。 Power:指数。参数 number 按照该指数次幂乘方。
注: 可以使用符号“^”代替 POWER,如: POWER(5,2) 等于 5^2。
示例:
POWER(6,2)等于 36。(6^2=6*6)
POWER(14,5)等于 537824。(14^5=14*14*14*14*14)
POWER(4,2/3)等于 2.519842100。(=3√(4^2)即3√16)
POWER(3,-2.3)等于 0.079913677。(3√(1/9))
22. PRODUCT
PRODUCT(number1,number2, ...):将所有以参数形式给出的数相乘,并返回乘积值。 number1, number2, ...:为 1 到 n个需要相乘的数字参数。(参数个数的上限为 30) 。
示例:
PRODUCT(3,4)等于 12。(3*4)
PRODUCT(3,4,5)等于 60。(3*4*5)
23. PROMOTION
PROMOTION(value1,value2):返回 value2 在 value 1上提升的比例.
示例:
PROMOTION(12, 14)等于 0.166666666(即提升了 16.6666666%.)。=(14-12)/12
PROMOTION(-12, 14)等于 2.166666666(即提升了 216.6666666%)。=(14-(-12))/12
24. RAND
RAND():返回一个随机数。数值位于区域[0,1],每计算一次工作表,函数都会返回一个新的随机数值。
注: 要生成一个位于 a 和 b 之间的随机数,可以使用以下的公式: =RAND()*(b-a)+a。
示例:
RAND()*60(生成一个大于等于0,小于60的随机数。)
RAND()*19(生成一个大于等于0,小于19的随机数。)
RAND()*50(生成一个大于等于0,小于50的随机数。)
其他变形生成方法:
①生成 A 与 B 之间的随机数字(A≤随机数<B)
在第一个格子中输入:RAND()*(B-A)+A
如,生成 1 到 10 之间的随机数字,输入:=RAND()*9+1
②生成 A 与 B 之间的随机整数(A≤随机数<B)
在第一个格子中输入:=INT(RAND9()*(B-A)+A)
如,生成 1 到 10 之间的随机整数,输入:=INT(RAND()*9+1)
其余数字,将鼠标置于该格子右下角,变为十字时,向下拖拉即可。
③生成 A 与 B 之间的随机整数的另一种方法(A≤随机数≤B)
在第一个格子中输入:RANDBETWEEN(A,B) 即可。
如,生成 1 到 10 之间的随机整数,输入:=RANDBETWEEN(1,10)
如想得到1位随机小数,则输入:=RANDBETWEEN(1,100)/10,2 位、3 位依此类推=RANDBETWEEN(1,1000)/100,=RANDBETWEEN(1,10000)/1000
25. RANDBETWEEN
RANDBETWEEN(value1,value2):返回 value1 和 value2 之间的一个随机整数。
示例:
RANDBETWEEN(12.333, 13.233)只会返回 13。
RANDBETWEEN(11.2, 13.3)有可能返回 12 或者 13。
26. ROUND
ROUND(number,num_digits):返回某个数字按指定位数舍入后的数字。number:需要进行舍入的数字。
如果 num_digits 大于 0,则舍入到指定的小数位。
如果 num_digits 等于 0,则舍入到最接近的整数。
如果 num_digits 小于 0,则在小数点左侧进行舍入。
因浮点数存在精度计算丢失问题,导致计算结果里可能带上 9999,0000 这些,因此加入第三个参数来控制是否需要去除9999,0000,false 表示需要过滤 9999,0000这些数据,true 表示保留,参数为空则默认为 false。
注1:2020-07-08 及之后版本的 JAR 包才会有第三个参数。
注2:2020-07-08 及之后版本的 JAR 包 number 参数支持字符串。
示例:
ROUND(2.15, 1)等于 2.2。
ROUND(2.149, 1)等于 2.1。
ROUND(-1.475, 2)等于 -1.48。
ROUND(21.5, -1)等于 20。
ROUND(1.99999999, 8)等于2。
ROUND(1.99999999, 8, true)等于 1.99999999。
27. ROUND5
ROUND5(number,num_digits):这个是四舍五入,奇数进位偶数不进位。number:需要进行舍入的数字。num_digits:指定的位数,按此位数进行舍入。
如果 num_digits 大于 0,则舍入到指定的小数位。
如果 num_digits 等于 0,则舍入到最接近的整数。
如果 num_digits 小于 0,则在小数点左侧进行舍入。
因浮点数存在精度计算丢失问题,导致计算结果里可能带上 9999,0000 这些,因此加入第三个参数来控制是否需要去除9999,0000,false 表示需要过滤 9999,0000这些数据,true 表示保留,参数为空则默认为 false。
注1:2020-07-08 及之后版本的 JAR 包才会有第三个参数。
注2:2020-07-08 及之后版本的 JAR 包 number 参数支持字符串。
示例:
ROUND5(2.125, 2)等于 2.12。
ROUND5(2.135, 2) 等于 2.14。
ROUND5(1262.135, -1)等于1260。
ROUND5(1.99999999, 8) 等于2。
ROUND5(1.99999999, 8, true) 等于 1.99999999 。
28. ROUNDDOWN
ROUNDDOWN(number,num_digits):靠近零值,向下(绝对值减小的方向)舍入数字。 number:为需要向下舍入的任意实数。 num_digits:舍入后的数字的位数。
注: 函数 ROUNDDOWN 和函数 ROUND 功能相似,不同之处在于函数 ROUNDDOWN 总是向下舍入数字。
示例:
ROUNDDOWN(3.2, 0)等于 3 。
ROUNDDOWN(76.9,0)等于 76。
ROUNDDOWN(3.14159, 3)等于 3.141 。
ROUNDDOWN(-3.14159, 1)等于 -3.1 。
ROUNDDOWN(31415.92654, -2)等于 31,400。
29. ROUNDUP
ROUNDUP(number,num_digits):远离零值,向上(绝对值增大的方向)舍入数字。 number:为需要向上舍入的任意实数。 num_digits:舍入后的数字的位数。 备注:函数 ROUNDUP 和函数 ROUND 功能相似,不同之处在于函数 ROUNDUP总是向上舍入数字。
示例:
ROUNDUP(3.2,0)等于 4
ROUNDUP(76.9,0)等于 77
ROUNDUP(3.14159, 3)等于 3.142
ROUNDUP(-3.14159, 1)等于 -3.2
ROUNDUP(31415.92654, -2)等于 31,500
30. SIGN
SIGN(number):返回数字的符号。当数字为正数时返回 1,为零时返回 0,为负数时返回 -1。 Number:为任意实数。
示例:
SIGN(10)等于 1。
SIGN(4-4)等于 0 。
SIGN(-0.00001)等于 -1。
31. SQRT
SQRT(number):返回一个正数的平方根。 Number:要求平方根的数。
注: Number 必须是一个正数,否则函数返回错误信息 NAN。
示例:
SQRT(64)等于 8。
SQRT(-64)返回 NAN。
33. SUMPRECISE
1)概述
语法 | SUMPRECISE(number1,number2,…) | 当对精度有要求时,比如整数位大于16位时,求一个指定单元格区域中所有数字之和,需要使用这个函数 |
---|---|---|
参数 | Number1,number2,… | 1 到 30 个参数或指定单元格区域中所有数字。 |
返回值 | number | - |
2)注意事项
函数将直接键入参数中的数值、逻辑值及文本表达式计算在内。 若参数是数组或引用,则只有数组或单元格引用中的数值进行计算。
3)示例
公式 | 结果 |
---|---|
SUMPRECISE(59300000000000000000.23,59300000000000003400.23) | 118600000000000003400.46 |
34. SUMSQ
SUMSQ(number1,number2, ...):返回所有参数的平方和。 number1, number2, ...:为 n 个需要求平方和的参数(n 的上限为 30),也可以使用数组或对数组的引用来代替以逗号分隔的参数。
示例:
SUMSQ(3, 4)等于 25。(3^2+4^2=9+16)
35. TOBINARY
1)概述
语法 | TOBINARY(int) | 将一个十进制整型数转换成二进制表示的字符串。 |
---|---|---|
参数 | int | 表示需要进行转换的十进制整数。 |
返回值 | String | - |
2)注意事项
int 参数支持范围:0 ~ Integer.MAX_VALUE。
3)示例
公式 | 结果 | 备注 |
---|---|---|
TOBINARY(10) | 1010 | - |
TOBINARY(20) | 10100 | - |
36. TOHEX
TOHEX(int):将一个十进制整型数转换成十六进制表示的字符串。 int:表示需要进行转换的十进制整数。
示例:
TOHEX(15)等于"f"。
TOHEX(20)等于"14"。
37. TOOCTAL
1)概述
语法 | TOOCTAL(int) | 将一个十进制整型数转换成八进制表示的字符串。 |
---|---|---|
参数 | int | 表示需要进行转换的十进制整数。 |
返回值 | String | - |
2)注意事项
int 参数支持范围:0 ~ Integer.MAX_VALUE。
3)示例
公式 | 结果 | 备注 |
---|---|---|
TOOCTAL(10) | 12 | - |
TOOCTAL(20) | 24 | - |
38. TRUNC
TRUNC(number,num_digits):取整。将数字的小数部分截去,返回整数。 number:需要截尾取整的数字。 num_digits:用于指定取整精度的数字。
示例:
TRUNC(8.9)等于 8。
TRUNC(-8.9)等于 -8。
TRUNC(PI())等于 3。
39. WEIGHTEDAVERAGE
WEIGHTEDAVERAGE(cell1,cell2):返回指定单元格数据的加权平均值。
加权平均值:是不同比重数据的平均数,即将各数值乘以相应的权数,然后加总求和得到总体值,再除以权数和得到的值。
参数 | 含义 | 参数格式 |
---|---|---|
cell1 | 数值单元格 | 单元格名称,例如:A1:A4 |
cell2 | 权数单元格 | 单元格名称,例如:B1:B4 |
示例:
报表中, A1,A2,A3,A4 单元格值分别为 10,9,8,7;B1,B2,B3,B4 单元格值分别为 0.2,0.1,0.3,0.4
求加权平均值:WEIGHTEDAVERAGE(A1:A4,B1:B4) 等于 8.1,即(10*0.2+9*0.1+8*0.3+7*0.4)/(0.2+0.1+0.3+0.4)=8.1。
注:求加权平均值时涉及到的所有单元格中数据必须都是数值型。