你的位置:首页 > Java教程

[Java教程]java报表工具FineReport常用函数的用法总结(数学和三角函数)


 

ABS

ABS(number):返回指定数字的绝对值。绝对值是指没有正负符号的数值。

Number:需要求出绝对值的任意实数。

示例:

ABS(-1.5)等于1.5。

ABS(0)等于0。

ABS(2.5)等于2.5。

 

ACOS

ACOS(number):返回指定数值的反余弦值。反余弦值为一个角度,返回角度以弧度形式表示。

Number:需要返回角度的余弦值。

备注:

函数的参数必须在-1和1之间,包括-1和1。

返回的角度值在0和Pi之间。

如果要把返回的角度用度数来表示,用180/PI()乘返回值即可。

示例:

ACOS(1)等于0(弧度)。

ACOS(0.5)等于1.047197551(Pi/3弧度)。

ACOSACOSH(0.5)*180/PI()等于60(度)。

 

ACOSH

ACOSH(number):返回给定数值的反双曲余弦。

Number:返回值的双曲余弦。

备注:

参数number的值必须大于或等于1。

ACOSH(COSH(number))=number。

示例:

ACOSH(1)等于0。

ACOSH(8)等于2.768659383。

ACOSH(5.5)等于2.389526435

 

ASIN

ASIN(number):返回指定数值的反正弦值。反正弦值为一个角度,返回角度以弧度形式表示。

Number:需要返回角度的正弦值。

备注:

指定数值必须在-1到1之间(含1与-1)。

返回角度在-pi/2到pi/2之间(含-pi/2与pi/2)。

用角度形式返回数值时,可以用返回数值乘以180/PI()。

示例:

ASIN(0.5)等于0.523598776(pi/6弧度)。

ASIN(1)等于1.570796327(pi/2弧度)。

ASIN(0.5)*180/PI()等于30(度)。

 

ASINH

ASINH(number):返回指定数值的反双曲正弦值。反双曲正弦值的双曲正弦等于指定数值。即:ASINH(SINH(number))=number。

Number:任意实数。

示例:

ASINH(-5)等于-2.312438341。

ASINH(8)等于2.776472281。

ASINH(16)等于3.466711038。

 

ATAN

ATAN(number):计算指定数值的反正切值。指定数值是返回角度的正切值,返回角度以弧度形式表示。

Number:返回角度的正切。

备注:

返回角度在-pi/2到pi/2之间。

如果返回角度等于-pi/2或pi/2,ATAN将返回错误信息*NUM!。

用角度形式返回数值时,返回数值乘以180/PI()。

示例:

ATAN(-1)等于-0.785398163(-pi/4弧度)。

ATAN(0)等于0(弧度)。

ATAN(2)*180/PI()等于63.43494882(度)。

ATAN2

ATAN2(x_num,y_num):返回x、y坐标的反正切值。返回角度为x轴与过(x_num,y_num)与坐标原点(0,0)的一条直线形成的角度。该角度以弧度显示。

X_num:指定点的x坐标。

Y_num:指定点的y坐标。

备注:

正值表示从x轴开始以逆时针方式所得的角度;负值表示从x轴开始以顺时针方式所得的角度。

ATAN2(a,b)=ATAN(b/a),a为0时除外。

当x_num与y_num都为0时,ATAN2返回错误信息*DIV/0!。

用角度制显示返回数值时,把返回数值乘以180/PI()。

返回值以弧度表示(返回值大于-pi且小于等于pi)。

示例:

ATAN2(-2,2)等于2.356194490(弧度制的3*pi/4)。

ATAN2(2,2)等于0.785398163(弧度制的pi/4)。

ATAN2(-2,2)*180/PI()等于135(角度制)。

 

AVERAGE

AVERAGE(number1,number2,…):返回指定数据的平均值。

Number1,number2…:用于计算平均值的参数。

备注:

参数必须是数字,或是含有数字的名称,数组或引用。

如果数组或引用参数中含有文字,逻辑值,或空白单元格,这些值将被忽略;但是,单元格中的零值则参与计算。

示例:

如果A1:A6被命名为“ages”,分别等于10,23,14,24,33及25,则:

AVERAGE(A1:A6)等于21.5。

AVERAGE(ages)等于21.5。

如果还有一个年龄为18的,求所有年龄的平均值为: AVERAGE(A1:A6,18)等于21。

 

BITNOT

BITNOT(int):将一个十进制整数进行二进制取反运算。

int:需要进行转换的十进制数。

示例:

BITNOT(3)等于-4。

BITNOT(12)等于-13。

 

BITOPERATION

BITOPERATIOIN(int,int,op)位运算,返回两个整数根据op进行位运算后的结果。

int:十进制整数。

op:位运算操作符,支持"&"(与),"|"(或),"^"(异或),"<<"(左移),">>"(右移)。

示例:

BITOPERATION(4,2,"&")表示4与2进行"与"运算,结果等于0。

BITOPERATION(4,2,"|")表示4与2进行"或"运算,结果等于6。

BITOPERATION(4,2,"^")表示4与2进行"异或"运算,结果等于6。

BITOPERATION(4,2,"<<")表示4按位左移2位,结果等于16。

BITOPERATION(4,2,">>")表示4按位右移2位,结果等于1。

BITOPERATION(4,1,"^~")表示4与2进行"同或"运算,结果为-7。

 

CEILING

CEILING(number,significance):将参数number沿绝对值增大的方向,舍入为基数的最小倍数。

Number:指待舍入的数值。

Significance:基数。

备注:

当number,significance任意一个为非数值型时,CEILING返回错误信息*VALUE?。

当number,significance符号不同时,CEILING返回错误信息*VALUE?。

无论数字符号如何,都按远离零的方向舍入。如果number已经为significance的倍数,则不进行舍入。

示例:

CEILING(2.5,-1)等于*VALUE?。

CEILING(-2.5,-1)等于-3。

CEILING(0.5,2)等于2。

 

COMBIN

COMBIN(number,number_chosen):返回若干个指定对象的组合数。该函数与数学表达式为Cnk功能相同。

Number或数学表达式中的"n"指对象总数。

Number_chosen或数学表达式中的"k"指在对象总数中某一组合的数量。

备注:

Number与number_chosen必须是非负整数,且Number>=number_chosen.否则返回*VALUE?。

对象组合是对象总体的子集。与排列不同的是,组合不涉及对象内部排序。

假设number=n,number_chosen= k,则:COMBIN(n,k)=Cnk=n!/(k!(n-k)!)。

示例:

COMBIN(5,2)等于10。

 

COS

COS(number):返回一个角度的余弦值。

Number:以弧度表示的需要求余弦值的角度。

备注:

要把一个角度转换成弧度值,将角度乘于PI()/180。

COS(n*2*PI()+number)=COS(number)(其中n为整数,number从-pi到pi)。

示例:

COS(0.5)等于0.877582562。

COS(30*PI()/180)等于0.866025404。

 

COSH

COSH(number):返回一个数值的双曲线余弦值。

Number:需要求其双曲线余弦值的一个实数。

备注:

双曲线余弦值计算公式为:,其中e是自然对数的底,e=2.71828182845904。

示例:

COSH(3)等于10.06766200。

COSH(5)等于74.20994852。

COSH(6)等于201.7156361。

 

COUNT

COUNT(value1,value2,…):计算数组或数据区域中所含数字项的个数。

Value1,value2,…:可包含任何类型数据的参数,但此函数只将数字类型的数据计算在内。

备注:

数字、日期或以文字代表的数字参数将被计算在内;但无法转换成数字的错误值或文本值参数将忽略不计。

如果数组或引用参数中包含可解析文本值、逻辑值、零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。

 

DEGREES

DEGREES(angle):将弧度转化为度。

Angle:待转换的弧度角。

示例:

DEGREES(PI()/2)等于90。

DEGREES(3.1415926)等于179.9999969。

 

EVEN

EVEN(number):返回沿绝对值增大方向取整后最接近的偶数。使用该函数可以处理那些成对出现的对象。

number:所要取整的数值。

备注:

不论正负号如何,数值都朝着远离 0的方向舍入。如果 number恰好是偶数,则不须进行任何舍入处理。

示例:

EVEN(1.5)等于 2

EVEN(3)等于 4

EVEN(2)等于 2

EVEN(-1)等于 -2

 

EXP

EXP(number):返回e的n次幂。常数e为自然对数的底数,等于2.71828182845904。

Number:为任意实数,作为常数e的指数。

备注:

如果要返回其他常数作为底数的幂,可以使用指数运算符(^)。例如:在4^2中,4是底数,而2是指数。

EXP函数与LN函数互为反函数。

示例:

EXP(0)等于1。

EXP(3)等于20.085536于 2

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(0)等于 1

FACT(5)等于0!*1*2*3*4*5等于 120

 

FLOOR

FLOOR(number,significance):将参数number沿绝对值减小的方向去尾舍入,使其等于最接近的基数的倍数。

Number:待舍入的数值。

Significance:基数。

备注:

当number和significance任意一个为非数值型的参数时,函数FLOOR返回错误信息*VALUE?。

当number和significance的符号不同时,函数FLOOR返回错误信息*VALUE?。

无论number的符号如何,舍入时参数的绝对值都将缩小。如果number恰好是指定倍数,则无需进行任何舍入处理。

其中significance不可以取零。

示例:

FLOOR(2.5,-1)等于*VALUE?。

FLOOR(-2.5,-1)等于-2。

FLOOR(2.5,2)等于2。

FLOOR(0.143,0.03)等于0.12。

 

INT

INT(number):返回数字下舍入(数值减小的方向)后最接近的整数值。

Number:需要下舍入为整数的实数。

示例:

INT(4.8)等于4。

INT(-4.8)等于-5。

INT(4.3)等于4。

INT(-4.3)等于-5。

公式INT(A1)将返回A1单元格中的一个正实数的整数数部分。

 

LESS

LESS(value1,value2,…, value):计算数组或数据区域中所含小于最后一个数据项的数据项个数。

Value1,value2,…:可包含任何类型数据的参数,但此函数只将数字类型的数据计算在内。

备注:

数字、日期或以文字代表的数字参数将被计算在内;但无法转换成数字的错误值或文本值参数将忽略不计。

如果数组或引用参数中包含可解析文本值、逻辑值、零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。

value一般取数值型参数。如果为非数值型,则返回"0".

示例:

LESS(10,2, 20) = 2

LESS(12,2, 10, 20) = 3

假设A1是30, A2是800, A3是30 LESS(A1:A3, 200, 200, 400) = 4

LESS(20)=0

 

LN

LN(number):返回一个数的自然对数。自然对数以常数项 e(2.71828182845904)为底。

number:是用于计算其自然对数的正实数。

示例:

LN(86)等于 4.45437

LN(2.7182818)等于 1

LN(EXP(3))等于 3

 

LOG

LOG(number,base):按指定的任意底数,返回数值的对数。

Number:需要求对数的正实数。

Base:对数的底数。缺省默认值为10。

示例:

LOG(16,2)等于4。

LOG(10)等于1。

LOG(24,3)等于2.892789261。

LOG10

LOG10(number):返回以 10为底的对数。

number:用于常用对数计算的正实数。

示例:

LOG10(86)等于1.934498451

LOG10(10)等于A1单元格中的一个正实数的整数部分。

 

MAX

MAX(number1,number2,…):返回参数列表中的最大值。

Number1,number2,…:1到30个需要找出最大值的参数。

备注:

参数可以是数字、空白单元格、逻辑值或数字的文本表达式。

如果数组或引用参数中包含可解析文本值,逻辑值,零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。

如果参数中没有任何数字,MAX将返回0。

示例:

MAX(0.1,0,1.2)等于1.2。

MAXLESSVALUE

MAXLESSVALUE(number,dictionary):返回数据字典dictionary中比number小的最大的数。

示例:

数据字典:customDictionary

键 值

11

22

33

44

MAXLESSVALUE(2.4,"customDictionary")等于2。

 

MIN

MIN(number1,number2,…):返回参数列表中的最小值。

Number1,number2,…:1到30个需要找出最小值的参数。

备注:

若参数中没有数字,函数MIN将返回0。

参数应为数字、空白单元格、逻辑值或是表示数值的文本串。如果参数是错误值时,MIN将返回错误信息。

如果数组或引用参数中包含可解析文本值,逻辑值,零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。

示例:

如果B1:B4包含3,6,9,12,则:

MIN(B1:B4)等于3。

MIN(B1:B4,0)等于0。

MINBIGVALUE

MINBIGVALUE(number,dictionary):返回dictionary中比number大的最小的数。

示例:

数据字典:customDictionary

键 值

11

22

33

44

MINBIGVALUE(2.4,"customDictionary")等于3。

 

MOD

MOD(number,divisor):返回两数相除的余数。结果的正负号与除数相同。

number:为被除数。

divisor:为除数。

示例:

MOD(3,2)等于 1

MOD(-3,2)等于 1

MOD(3,-2)等于 -1

MOD(-3,-2)等于 -1

 

MORE

MORE(value1,value2,…, value):计算数组或数据区域中所含大于最后一个数据项的数字项个数。

Value1,value2,…:可包含任何类型数据的参数,但此函数只将数字类型的数据计算在内。

备注:

数字、日期或以文字代表的数字参数将被计算在内;但无法转换成数字的错误值或文本值参数将忽略不计。

如果数组或引用参数中包含可解析文本值、逻辑值、零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。

value一般取为数值型,否则返回结果为零。

示例:

MORE(100,200, 20) = 2

MORE(100,200, 200, 20) = 3

假设A1是30, A2是10, A3是30 MORE(A1:A3, 200, 200, 20omDictionary")等于3。

 

ODD

ODD(number):返回对指定数值进行舍入后的奇数。

number:是要舍入求奇的数值。

不论正负号如何,数值都朝着远离 0的方向舍入。如果 number恰好是奇数,则不须进行任何舍入处理。

示例:

ODD(1.5)等于 3

ODD(3)等于 3

ODD(2)等于 3

ODD(-1)等于 -1

 

PI

PI:是一个数学常量,函数返回精确到15位的数值3.141592653589793。

示例:

SIN(PI()/2)等于1。

计算圆的面积的公式: S=PI()*(r^2),其中S为圆的面积,R为圆的半径。

 

POWER

POWER(number,power):返回指定数字的乘幂。

Number:底数,可以为任意实数。

Power:指数。参数number按照该指数次幂乘方。

备注:

可以使用符号“^”代替POWER,如: POWER(5,2)等于5^2。

示例:

POWER(6,2)等于36。

POWER(14,5)等于537824。

POWER(4,2/3)等于2.519842100。

POWER(3,-2.3)等于0.079913677。

 

PRODUCT

PRODUCT(number1,number2,...):将所有以参数形式给出的数相乘,并返回乘积值。

number1,number2, ...:为 1到 n个需要相乘的数字参数。(参数个数的上限为30)

示例:

PRODUCT(3,4)等于 12

PRODUCT(3,4,5)等于 60

 

PROMOTION

PROMOTION(value1,value2):返回value2在value1上提升的比例.

示例:

PROMOTION(12,14)等于0.166666666,即提升了16.6666666%.

PROMOTION(-12,14)等于2.166666666,即提升了216.6666666%.

 

RADIANS

RADIANS(angle):将角度转换成弧度。

Angle:需要转换为弧度的角度。

示例:

RADIANS(90)等于1.570796327(Pi/2弧度)。

 

RAND

RAND():返回一个随机数。数值位于1区域[0,1]每计算一次工作表,函数都会返回一个新的随机数值。

备注:

要生成一个位于a和b之间的随机数,可以使用以下的公式: C=RAND()*(b-a)+a。

如果要使一个随机产生的数值不随单元格的重计算而改变,可以在编辑框中输入=RAND()并保持编辑状态,然后按F9,将公式永久性地改为随机数。

示例:

假如需要生成一个大于等于0,小于60的随机数,使用公式: =RAND()*60。

假如需要生成一个大于等于0,小于19的随机数,使用公式: =RAND()*19。

假如需要生成一个大于等于0,小于50的随机数,使用公式: =RAND()*50。

 

RANDBETWEEN

RANDBETWEEN(value1,value2):返回value1和value2之间的一个随机整数。

示例:

RANDBETWEEN(12.333,13.233)只会返回13。

RANDBETWEEN(11.2,13.3)有可能返回12或者13。

 

RANK

RANK(number,ref,order):返回一个数在一个数组中的秩。(如果把这个数组排序,该数的秩即为它在数组中的序号。)

Number所求秩的数。(可以是Boolean型,true=1,false=0)

Ref可以是数组,引用,或一系列数,非实数的值被忽略处理(接受Boolean型,true=1,false=0)。

Order指定求秩的参数,非零为升序,零为降序

备注:

RANK对重复的数返回相同的秩,但重复的数影响后面的数的秩,比如,在一组升序排列的整数中,如果5出现了2次,并且秩为3,那么6的秩为5 (没有数的秩是4).

在前面的例子中,如果想得到5的修正的秩为3.5,可以在返回秩的基础上加上一个修正因子。该修正因子同时适合升序和降序的情况。

修正因子为[COUNT(ref) + 1 – RANK(number, ref, 0) – RANK(number, ref, 1)]/2.

在下面的例子中,RANK(A2,A1:A5,1) = 3。修正因子为 (5 + 1 – 2 – 3)/2 = 0.5修正后的秩为 3 + 0.5 = 3.5。如果number在ref中只出现一次,修正因子等于0,秩不会变化。

示例:

A1:A5= 6, 4.5, 4.5, 2, 4

RANK(A1,A1:A5,1)即 6的秩为 5.

RANK(3,1,2,"go",3,13.3)有可能返回12或者13。

 

ROUND

ROUND(number,num_digits):返回某个数字按指定位数舍入后的数字。

number:需要进行舍入的数字。

num_digits:指定的位数,按此位数进行舍入。

如果 num_digits大于 0,则舍入到指定的小数位。

如果 num_digits等于 0,则舍入到最接近的整数。

如果 num_digits小于 0,则在小数点左侧进行舍入。

示例:

ROUND(2.15,1)等于 2.2

ROUND(2.149,1)等于 2.1

ROUND(-1.475,2)等于 -1.48

ROUND(21.5,-1)等于 20

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

 

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

 

SIGN

SIGN(number):返回数字的符号。当数字为正数时返回 1,为零时返回 0,为负数时返回 -1。

Number:为任意实数。

示例:

SIGN(10)等于 1

SIGN(4-4)等于 0

SIGN(-0.00001)等于 -1

 

SIN

SIN(number):计算给定角度的正弦值。

Number:待求正弦值的以弧度表示的角度。

备注:

如果参数的单位是度,将其乘以PI()/180即可转换成弧度。

示例:

SIN(10)等于-0.544021111。

SIN(45*PI()/180)等于0.707106781。

 

SINH

SINH(number):返回某一数字的双曲正弦值。

number:为任意实数。

示例:

SINH(1)等于1.175201194

SINH(-1)等于 -1.175201194

 

SQRT

SQRT(number):返回一个正数的平方根。

Number:要求平方根的数。

备注:

Number必须是一个正数,否则函数返回错误信息NAN。

示例:

SQRT(64)等于8。

SQRT(-64)返回NAN。

 

SUM

SUM(number1,number2,…):求一个指定单元格区域中所有数字之和。

Number1,number2,…:1到30个参数或指定单元格区域中所有数字。

备注:

函数将直接键入参数中的数值、逻辑值及文本表达式计算在内。

若参数是数组或引用,则只有数组或单元格引用中的数值进行计算。

示例:

SUM(70,80)等于150。

SUM("70",80,TRUE)等于151,逻辑值“TRUE”作为1来计算;“FALSE”作为0计算;文本“70”作为0来计算。

SUM(A1:A5)对A1到A5之间的格子中的数值求和。

SUM(A1:A5,50)对A1到A5之间的格子中的数值和数值50求和。

 

SUMSQ

SUMSQ(number1,number2,...):返回所有参数的平方和。

number1,number2, ...:为 n个需要求平方和的参数(n的上限为30),也可以使用数组或对数组的引用来代替以逗号分隔的参数。

示例:

SUMSQ(3,4)等于 25

 

TAN

TAN(number):返回指定角度的正切值。

Number:待求正切值的角度,以弧度表示。如果参数是以度为单位的,乘以Pi()/180后转换为弧度。

示例:

TAN(0.8)等于1.029638557。

TAN(45*Pi()/180)等于1。

 

TANH

TANH(number):返回某一数字的双曲正切值。

number:为任意实数。

示例:

TANH(-2)等于 -0.96403

TANH(0)等于 0

TANH(0.5)等于 0.462117

 

TOBINARY

TOBINARY(int):将一个十进制整型数转换成二进制表示的字符串。

int:表示需要进行转换的十进制整数。

示例:

TOBINARY(10)等于"1010"。

TOBINARY(20)等于"10100"。

 

TOHEX

TOHEX(int):将一个十进制整型数转换成十六进制表示的字符串。

int:表示需要进行转换的十进制整数。

示例:

TOHEX(15)等于"f"。

TOHEX(20)等于"14"。

 

TOOCTAL

TOOCTAL(int):将一个十进制整型数转换成八进制表示的字符串。

int:表示需要进行转换的十进制整数。

示例:

TOOCTAL(10)等于"12"。

TOOCTAL(20)等于"24"。

 

TRUNC

TRUNC(number,num_digits):取整。将数字的小数部分截去,返回整数。

number:需要截尾取整的数字。

num_digits:用于指定取整精度的数字。

示例:

TRUNC(8.9)等于 8

TRUNC(-8.9)等于 -8

TRUNC(PI())等于 3。

 

UUID

UUID():返回随机的机器数。

备注:

此处的缺省默认值为36.

示例:

UUID()返回36位随机机器数。

UUID(32)返回32位随机机器数。