• 财讯网
  • 主页 > 宏观 > 正文

    使用在线Excel时,有哪些方法可以引入计算函数?

    2023-08-10 09:30:52  |  来源:博客园  |  编辑:  |  

    摘要:本文由葡萄城技术团队于博客园原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。


    (资料图片仅供参考)

    前言

    在日常生活和工作中,我们都会或多或少的使用Excel中的计算公式函数,比如求和公式、平均数公式等。今天为大家整理了一些在线Excel中可以引入的公式函数。

    基本函数

    Excel中包含450个基本原生函数:比如常见的求和、求差函数,取最大值和最小值函数等。由于篇幅原因,原生函数的详细解释可以看这里。

    如何在Excel中引入基本函数:

    1.基本原生函数的引入。

    2.自定义函数的引入。(除了Excel自带的原生函数之外,用特定的业务用例创建自己的自定义函数,可以像定义任何内置函数一样定义和调用它们)

    3.迭代计算/循环引用(可以通过使用先前的结果反复运行来帮助找到某些计算的解决方案)

    4.异步函数的引入(AsyncFunction函数来计算异步数据,该函数用在不能立刻获取计算结果的时候使用)

    数组公式和动态数组

    数组公式是指可以在数组的一项或多项上执行多个计算的公式,你可以将数组视为一行值、一列值或行值和列值的组合。数组公式可以返回多个结果,也可返回一个结果。动态数组用于替换数组公式。 任何可能返回多个结果的公式都可以称为动态数组公式。 当前返回多个结果并成功溢出的公式可以称为溢出数组公式。

    如何在Excel中引入数组公式和动态数组:

    数组公式的引入

    动态数组的引入

    2.Filter函数的引入(FILTER函数可以根据定义的条件过滤一系列数据)

    FILTER函数基于布尔数组来过滤数组。

    语法:

    FILTER(array, include, if_empty?)

    参数必需描述
    array要进行过滤的数组或区域
    include一个布尔数组,其高度或宽度与要进行过滤的数组相同
    [if_empty]如果所包含数组中的所有值均为空(filter结果为空)的返回值

    3.RANDARRAY 函数的引入

    RANDARRAY函数返回一个随机数数组。用户可以指定要填充的行和列的数量,最小值和最大值,以及返回整数或十进制值。

    语法:

    RANDARRAY(rows?, columns?, min?, max?, whole_number?)

    参数必需描述
    [rows]要返回数据的行数
    [columns]要返回数据的列数
    [min]随机数的最小值
    [max]随机数的最大值
    [whole_number]返回整数或浮点数:整数则为true,浮点数为false。

    4.SEQUENCE 函数的引入

    SEQUENCE函数可以生成一个依序组成的数字序列,例如1,2,3,4。

    语法:

    SEQUENCE(rows, columns?, start?, step?)

    参数必需描述
    rows要返回数据的行数
    [columns]要返回数据的列数
    [start]序列的第一个数字
    [step]序列中的递增值

    5.UNIQUE函数

    UNIQUE函数返回列表或区域中的唯一值列表。

    语法:

    UNIQUE(array, by_col?, occurs_once?)

    参数必需描述
    array返回唯一值的区域或数组
    [by_col]指示如何比较的布尔值;省略或为false为按行; true时为按列
    [occurs_once]布尔值,为true时返回出现一次的唯一值,为false或省略时返回所有的唯一值

    6.SORTBY函数

    SORTBY函数根据相应区域或数组中的值对区域或数组的内容进行排序。

    语法:

    SORTBY(array, by_array1, [sort_order1], [by_array2, sort_order2], …)

    参数必需描述
    array要排序的数组或区域
    by_array1要对其进行排序的数组或区域
    [sort_order1]要用于排序的顺序。 1表示升序,-1 表示降序。 默认值为 "升序"。
    [by_array2]要对其进行排序的数组或区域
    [sort_order2]要用于排序的顺序。 1表示升序,-1 表示降序。 默认值为 "升序"。

    7.隐式交集运算符: @

    隐式交集逻辑将多个值减少为一个值。 用户可以在公式之前添加 @ 来强制公式返回单个值,因为单元格只能包含一个值。 如果公式返回一个值,则隐式交集不会执行任何操作(即使是在后台完成的)。 逻辑工作方式如下:

    如果该值是单个项, 则返回该项。如果该值为一个区域, 则从与公式位于同一行或列的单元格中返回值。如果该值为数组, 则选择左上角的值。LAMBDA函数集

    1.LAMBDA函数

    LAMBDA函数使您能够使用 Excel 自己的公式语言定义自定义函数。

    语法:

    LAMBDA([parameter1, parameter2, …,] calculation)

    MAP函数

    返回一个数组,通过应用LAMBDA将数组中的每个值映射到一个新的值,形成一个数组。

    语法:

    MAP(array1, lambda_or_array<#>)

    MAP函数的语法有以下参数。

    array1一个要被映射的数组。lambdaorarray<#>一个LAMBDA,它必须是最后一个参数,它必须为每个传递的数组提供一个参数,或者是另一个要被映射的数组。REDUCE函数

    通过对每个值应用LAMBDA,将一个数组减少为一个累积值,并返回累积器中的总数值。

    语法:

    REDUCE(initial_value, array, lambda(accumulator, value))

    initial_value设置累积器的起始值。array一个要被减少的数组。lambda调用一个LAMBDA来减少数组。该LAMBDA需要两个参数。accumulator数值加起来,作为最终结果返回。value应用于数组中每个元素的计算。

    4. SCAN函数

    通过对每个值应用LAMBDA来扫描一个数组,并返回一个拥有每个中间值的数组。

    语法:

    SCAN([initial_value], array, lambda(accumulator, value))

    initial_value设置累积器的起始值。array一个要扫描的数组。lambda一个LAMBDA,被调用来扫描数组。该LAMBDA需要两个参数。accumulator数值加起来,作为最终结果返回。value应用于数组中每个元素的计算。

    5. MAKEARRAY函数

    通过应用LAMBDA,返回一个指定行和列大小的计算数组。

    语法:

    MAKEARRAY(rows, cols, lambda(row, col))

    rows阵列中的行数。必须大于零。cols阵列中的列数。必须大于零。lambda调用一个LAMBDA来创建数组。该LAMBDA需要两个参数。row数组的行索引。col数组的列索引。

    6. BYROW函数

    将LAMBDA应用于每一行,并返回结果的数组。例如,如果原始数组是3列2行,返回的数组是1列2行。

    语法:

    BYROW(array, lambda(row))

    array一个要用列来分隔的数组。lambda一个LAMBDA,将一个行作为单一参数,并计算一个结果。该LAMBDA需要一个单一的参数。row阵列中的一行。

    7. BYCOL函数

    将LAMBDA应用于每一列,并返回结果的数组。例如,如果原始数组是3列2行,返回的数组是3列1行。

    语法:

    array一个要用列来分隔的数组。lambda一个LAMBDA,将一个列作为单一参数,并计算一个结果。该LAMBDA需要一个单一的参数。column阵列中的一个列。

    8. ISOMITTED函数

    检查LAMBDA中的值是否丢失,并返回TRUE或FALSE。

    语法:

    ISOMITTED(argument)

    argument你想测试的值,如LAMBDA参数。

    除了上述的计算公式函数之外,还可以在实战代码库中找到更多的在线表格的demo,包括Excel导入导出、数据绑定、打印、复制粘贴、数据校验等功能模块,欢迎大家的访问。

    扩展链接:

    Spring Boot框架下实现Excel服务端导入导出

    项目实战:在线报价采购系统(React +SpreadJS+Echarts)

    Svelte 框架结合 SpreadJS 实现纯前端类 Excel 在线报表设计

    关键词:

    上一篇:小K播早报|中国科技巨头向英伟达订购50亿美元芯片 三星将详解人形机器人计划    下一篇:最后一页