反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

自定义函数集合

  • 文档创建者:caott666
  • 历史版本:8
  • 最近更新:Alicehyy 于 2021-08-16
  •  1. 概述

    1.1 版本

    报表服务器版本 JAR 包版本插件版本
    10.02019-08-01V1.1

    1.2 应用场景

    把一些常用的自定义函数封装成插件,方便用户使用。

    2. 插件介绍

    2.1 插件安装

    点击下载插件:自定义函数集合插件

    设计器插件安装方法参照:设计器插件管理

    服务器安装插件方法参照:服务器插件管理

    2.2 操作方法

    右键单元格,选择单元格元素>插入公式,在弹出的公式定义界面,点击全部函数,鼠标左键双击函数名即可插入函数,如下图所示:
    1586445635759003.png

    2.3 函数简介

    函数名
    简介  
    Concat该函数中可以使用 JavaScript 脚本,避免嵌套各种 IF、SWITCH 函数的写法
    Unicode返回对应于文本的第一个字符的数字
    Unichar返回给定数值引用的 Unicode 字符
    Search返回第一次找到特定字符或文本字符串处的字符编号,以 start_num 开头
    Isodd如果参数 number 为奇数,返回 TRUE,否则返回 FALSE
    Iseven如果参数 number 为偶数,返回 TRUE,否则返回 FALSE
    Networkdays返回参数 start_date 和 end_date 之间完整的工作日数值,工作日不包括周末和专门指定的假期
    Isblank如果参数值为空,则返回 TRUE
    Gcd返回两个或多个整数的最大公约数
    Lcm

    返回整数的最小公倍数

    Quotient返回除法的整数部分
    Mround返回舍入到所需倍数的数字
    Sqrtpi返回某数与 pi 的乘积的平方根
    Sec返回角度的正割值
    Csc传回以弧度表示之角度的余割值
    Cot返回以弧度表示的角度的余切值
    Acot返回数字的反余切值的主值
    Factdouble返回数字的双倍阶乘
    Roman将阿拉伯数字转换为文字形式的罗马数字
    Counta计算范围中不为空的单元格的个数
    Countblank计算单元格区域中的空单元格的数量
    Mode返回的数组或数据区域中出现频率最高或重复出现值

    3. 详细介绍

    下面逐条介绍每个函数的使用方法。

    3.1 Concat

    1)说明

    concat(text1, [text2],…):函数将多个区域和/或字符串中的文本组合起来

    2)示例

    concat('明','天'):返回明天

    3.2 Unicode

    1)说明

    unicode('text'):返回对应于文本的第一个字符的数字

    2)示例

    Unicode('你好'):返回20320(你)

    3.3 Unichar

    1)说明

    unicode(number):返回给定数值引用的 Unicode 字符

    number :必需,number 为代表字符的 Unicode 数字

    2)示例

    unichar(20320):返回

    3.4 Search

    1)说明

    search(find_text,within_text,start_num):返回第一次找到特定字符或文本字符串处的字符编号,以 start_num 开头

    find_text:要查找的文本。您可以在 find_text 中使用通配符,即问号 (?) 和星号 (*)。问号匹配任一单个字符;星号匹配任一字符序列。如果要查找实际的问号或星号,请在字符前键入波形符 (~)

    within_text:是要在其中搜索 find_text 的文本

    start_num:within_text 中要开始搜索的字符编号。可以使用 start_num 来跳过指定数目的字符

    2)示例

    search("Y","AYF0093.YoungMensApparez",8):返回9(从第8位开始搜索"Y"出现的字符编号)

    3.5 Isodd

    1)说明

    isodd(number):如果参数 number 为奇数,返回 TRUE,否则返回 FALSE

    注:如果 number 不是整数,将被截尾取整。

    2)示例

    isodd(1.1):返回true

    3.6 Iseven

    1)说明

    iseven(number):如果参数 number 为偶数,返回 TRUE,否则返回 FALSE

    注:如果 number 不是整数,将被截尾取整。

    2)示例

    iseven(1.2):返回false

    3.7 Networkdays

    1)说明

    networkdays(start_date, end_date, [holidays]):返回参数 start_date 和 end_date 之间完整的工作日数值。 工作日不包括周末和专门指定的假期

    start_date:必需。代表开始日期的日期

    end_date:必需。代表终止日期的日期

    注:若要使用参数来指明周末的日期和天数,从而计算两个日期间的全部工作日数,请使用 NETWORKDAYS.INTL 函数。

    2)示例

    networkdays('2020-04-01','2020-04-07'):返回5(包含了1天假期)

    注:NETWORKDAYS.INTL 函数未测试成功。

    3.8 Isblank

    1)说明

    Isblank():如果参数值为空,则返回 TRUE

    2)示例

    isblank(Null):返回true

    3.9 Gcd

    1)说明

    gcd(number1, [number2], ...):返回两个或多个整数的最大公约数

    number1,number2:必需

    2)示例

    gcd(4,12):返回4

    3.10 Lcm

    1)说明

    lcm(number1, [number2], ...):返回整数的最小公倍数

    number1,number2:必需

    2)示例

    lcm(4,7):返回28

    3.11 Quotient

    1)说明

    quotient(numerator, denominator):返回除法的整数部分

    numerator:必需,被除数

    denominator:必需,除数

    2)示例

    quotient(5,7):返回0

    3.12 Mround

    1)说明

    mround(number, multiple):返回舍入到所需倍数的数字

    number:必需,要舍入的值

    multiple:必需,要舍入到的倍数

    2)示例

    mround(10,3):结果9(将 10 四舍五入到最接近 3 的倍数)

    3.13 Sqrtpi

    1)说明

    sqrtpi(number):返回某数与 pi 的乘积的平方根

    number:必需,number为与 pi 相乘的数

    注:如果 number 小于 0,则 SQRTPI 返回错误值

    2)示例

    sqrtpi(3):返回3.0699801238394655

    3.14 Sec

    1)说明

    sec(number):返回角度的正割值

    number:必需,number 为需要对其进行正割的角度 (以弧度为单位)

    注:number 的绝对值必须小于 2^27。

    2)示例

    sec(1):返回1.8508157176809255

    3.15 Csc

    1)说明

    csc(number):传回以弧度表示之角度的余割值

    number:必要

    注:number 的绝对值必须小于 2^27。

    2)示例

    csc(1):返回1.1883951057781212

    3.16 Cot

    1)说明

    cot(number):返回以弧度表示的角度的余切值

    number:必需,要获得其余切值的角度,以弧度表示

    注:number 的绝对值必须小于 2^27。

    2)示例

    cot(1): 返回0.642

    3.17 Acot

    1)说明

    acot(number):返回数字的反余切值的主值

    number:必需,Number 为所需角度的余切值。此值必须是实数

    注:返回的角度以弧度表示,弧度值在 0(零)到 pi 之间。

    2)示例

    acot(1):返回0.7853981633974483

    3.18 Factdouble

    1)说明

    factdouble(number):返回数字的双倍阶乘

    number:必需

    2)示例

    factdouble(4):返回8

    3.19 Roman

    1)说明

    roman(number):将阿拉伯数字转换为文字形式的罗马数字

    number:必需,需要转换的阿拉伯数字

    2)示例

    roman(10):加密结果为X

    3.20 Counta

    1)说明

    counta(value1, [value2], ...):计算范围中不为空的单元格的个数

    value1:必需, 表示要计数的值的第一个参数

    value2, ...:可选,表示要计数的值的其他参数

    2)示例

    counta(A11:A15):加密结果为5

    3.21 Countblank

    1)说明

    countblank(range):计算单元格区域中的空单元格的数量

    range:必需,需要计算其中空白单元格个数的区域

    注:包含返回 (空文本)的公式的单元格也会计算在内。 包含零值的单元格不计算在内。

    2)示例

    countblank(A11):加密结果为-1(A11为 0 )

    3.22 Mode

    1)说明

    mode(number1,[number2],...):数组或数据区域中出现频率最高或重复出现的值

    number1:必需,要计算其众数的第一个数字参数

    number2,...:可选,要计算其众数的 2 到 255 个数字参数。也可以用单一数组或对某个数组的引用来代替用逗号分隔的参数

    注:参数可以是数字或者是包含数字的名称、数组或引用。如果数组或引用参数包含文本、逻辑值或空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内。

    2)示例

    mode(1,2,3,5,1,4,3,1,5,2,1):返回结果为1

    4. 模板下载

    点击下载模板:自定义函数插件.cpt

    附件列表


    主题: 报表专题
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526