Files
WorkNote/SanPinPLM/相关操作/4.0-other/998.Excel常用函数.md
2025-04-30 11:42:37 +08:00

50 KiB
Raw Blame History

介绍

使用Excel函数可以大幅提升数据处理效率、准确性和自动化水平

注意:若参数中包含了报错,那么多数函数的返回值也会是报错

函数列表

SUM 求和函数

SUM函数用于计算一系列数值的总和。基本语法如下

=SUM(number1, [number2], ...)

参数说明

  • number1:必需参数。第一个需要求和的项,可以是直接的数值、单元格引用或者包含数值的区域
  • [number2], ...:可选参数。后续需要求和的项,最多可以有 255 个参数

说明

  • SUM 函数可以接受多种类型的参数包括数值、单元格引用、区域和逻辑值TRUE 被转换为 1FALSE 被转换为 0
  • 当区域中有非数值数据时,这些数据会被忽略
  • SUM 函数能够自动扩展以适应拖拽填充柄时所选择的单元格范围
  • 空单元格不会被计入总和中

案例

对102030求和

=SUM(10,20,30)

对A1单元格到A10单元格求和

=SUM(A1:A10)

对A1单元格到A10单元格、C1单元格到C10单元格求和

=SUM(A1:A10,C1:C10)

混合使用

=SUM(10, A1, B1:B10)


SUMIF 单条件筛选求和

SUMIF函数用于根据指定条件对数值进行求和。基本语法如下

=SUMIF(range, criteria, [sum_range])

参数说明

  • range:必需参数。用于设置条件的单元格范围
  • criteria:必需参数。定义哪些单元格将被加总的标准。它可以是数字、表达式、单元格引用或文本形式
  • [sum_range]:可选参数。实际求和的单元格范围。如果省略此参数,则 range 将同时作为 sum_range 使用

说明

  • SUMIF 函数支持使用通配符 (*?) 来匹配文本。其中 * 表示任意数量的字符,? 表示单个字符
  • 如果 sum_range 参数省略,SUMIF 函数会将 range 参数中的单元格视为 sum_range,即对符合 criteria 的单元格自身进行求和
  • 如果 range 中没有单元格满足 criteria,则返回 0
  • 如果 criteria 包含特殊字符(如 =>< 等),需要将它们放在双引号内。例如,=SUMIF(A1:A10, "<=100")
  • 如果 criteria 是文字或逻辑值(例如 TRUE 或 FALSE也需要放在双引号内
  • 如果 criteria 是一个单元格引用,则不需要双引号

案例

A B C
产品 销售额 数量
Apple 50 100
Banana 30 50
Apple 40 75
Orange 60 80

计算Apple产品的销售总额

=SUMIF(A2:A5, "Apple", B2:B5)

计算所有产品数量超过 50 的销售额总和

=SUMIF(C2:C5, ">50", B2:B5)


SUMIFS 多条件筛选求和

SUMIFS函数用于根据多个条件对一组数值进行求和。基本语法如下

=SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

参数说明

  • sum_range:必需参数。实际求和的单元格范围
  • criteria_range1:必需参数。用于设置第一个条件的单元格范围
  • criteria1:必需参数。定义哪些单元格将被加总的第一个标准。它可以是数字、表达式、单元格引用或文本形式
  • [criteria_range2, criteria2], ...:可选参数。用于设置更多条件的额外单元格范围和对应的条件

说明

  • SUMIFS 函数支持使用通配符 (*?) 来匹配文本。其中 * 表示任意数量的字符,? 表示单个字符
  • 所有的条件都必须同时满足才能对相应的单元格进行求和
  • 如果 sum_range 和任一 criteria_range 的大小不一致,SUMIFS 函数将返回错误
  • 如果 criteria 包含特殊字符(如 =>< 等),需要将它们放在双引号内。例如,=SUMIFS(C1:C10, B1:B10, "<=100")
  • 如果 criteria 是文字或逻辑值(例如 TRUE 或 FALSE也需要放在双引号内
  • 如果 criteria 是一个单元格引用,则不需要双引号

案例

计算 C1 到 C10 区域内的数值总和,前提条件是在 A1 到 A10 区域内单元格内容为 "Fruit",且在 B1 到 B10 区域内单元格的值大于 20

=SUMIFS(C1:C10, A1:A10, "Fruit", B1:B10, ">20")

计算 C1 到 C10 区域内的数值总和,前提条件是在 A1 到 A10 区域内单元格内容与D1单元格相同且在 B1 到 B10 区域内单元格的值大于 20

=SUMIFS(C1:C10, A1:A10, D1, B1:B10, E1)

计算 C1 到 C10 区域内的数值总和,前提条件是在 A1 到 A10 区域内单元格内容含 "apple" 文本,且在 B1 到 B10 区域内单元格的值大于 20

=SUMIFS(C1:C10, A1:A10, "*apple*", B1:B10, ">20")

A B C D
产品 销售额 数量 地区
Apple 50 100 North
Banana 30 50 South
Apple 40 75 North
Orange 60 80 East

计算所有 "Apple" 产品且地区为 "North" 的销售额总和

=SUMIFS(B2:B5, A2:A5, "Apple", D2:D5, "North")

计算所有产品数量超过 50 且地区为 "North" 的销售额总和

=SUMIFS(B2:B5, C2:C5, ">50", D2:D5, "North")


SUMPRODUCT 数组间元素乘积和

SUMPRODUCT函数用于计算数组间对应元素的乘积之和也可以用来根据条件进行求和。基本语法

=SUMPRODUCT(array1, [array2], [array3], ...)

参数说明

  • array1:必需参数。第一个数组或范围
  • [array2], [array3], ...:可选参数。后续数组或范围。最多可以有 255 个数组

说明

  • SUMPRODUCT 函数支持数组运算,可以将数组之间的元素相乘并求和
  • 可以通过使用逻辑表达式 (如 A1:A10 = "Apple") 生成 0 或 1 的数组,然后与另一个数组相乘来实现条件求和
  • SUMPRODUCT 函数可以接受多个数组参数,并且这些数组必须具有相同的尺寸(行数和列数相同)
  • 如果数组大小不一致,SUMPRODUCT 函数会返回错误
  • 使用 SUMPRODUCT逻辑表达式的结果会被转换为数字TRUE 转换为 1FALSE 转换为 0
  • SUMPRODUCT 可以用于替代 SUMIFSUMIFS 函数,特别是在需要使用多个条件或更复杂的逻辑时

案例

计算1 * 4 + 2 * 5 + 3 * 6

=SUMPRODUCT({1, 2, 3}, {4, 5, 6})

计算 A1 到 A10 区域内等于 "Apple" 的所有 B1 到 B10 区域内的数值总和

=SUMPRODUCT((A1:A10 = "Apple") * B1:B10)

计算 A1 到 A10 区域内等于 "Apple" 且 C1 到 C10 区域内等于 "North" 的所有 B1 到 B10 区域内的数值总和

=SUMPRODUCT((A1:A10 = "Apple") * (C1:C10 = "North") * B1:B10)

计算 A1 到 A10 区域内包含 "Apple" 且 C1 到 C10 区域内等于 "North" 的所有 B1 到 B10 区域内的数值总和

=SUMPRODUCT((A1:A10 LIKE "*Apple*") * (C1:C10 = "North") * B1:B10)

计算 A1 到 A10 区域内等于 "Apple" 且 C1 到 C10 区域内的值大于等于 50 的所有 B1 到 B10 区域内的数值总和

=SUMPRODUCT((A1:A10 = "Apple") * (C1:C10 >= 50) * B1:B10)

A B C
产品 销售额 数量
Apple 50 100
Banana 30 50
Apple 40 75
Orange 60 80

计算所有 "Apple" 产品的销售额总和

=SUMPRODUCT((A2:A5 = "Apple") * B2:B5)

计算所有产品数量超过 50 的销售额总和

=SUMPRODUCT((C2:C5 > 50) * B2:B5)

计算所有 "Apple" 产品且数量超过 50 的销售额总和

=SUMPRODUCT((A2:A5 = "Apple") * (C2:C5 > 50) * B2:B5)


AVERAGE 计算平均值

AVERAGE函数用于计算一组数值的算术平均值。基本语法如下

=AVERAGE(number1, [number2], ...)

参数说明

  • number1:必需参数。第一个需要计算平均值的数值或引用
  • [number2], ...:可选参数。后续需要计算平均值的数值或引用。最多可以有 255 个参数

说明

  • AVERAGE 函数可以接受多种类型的参数包括数值、单元格引用、区域和逻辑值TRUE 被转换为 1FALSE 被转换为 0
  • 当区域中有非数值数据时,这些数据会被忽略
  • AVERAGE 函数能够自动扩展以适应拖拽填充柄时所选择的单元格范围
  • 如果 AVERAGE 函数中的参数包含了错误值(例如 #DIV/0 !),则最终的结果也会产生错误。
  • 空单元格不会被计入平均值计算中。
  • 如果所有参数都是空白或文本,则 AVERAGE 函数将返回 #DIV/0 ! 错误

案例

对102030求平均值

=AVERAGE(10, 20, 30)

计算A1到A10的平均值

=AVERAGE(A1:A10)

对A1单元格到A10单元格、C1单元格到C10单元格求平均值

=AVERAGE(A1:A10, C1:C10)

混合使用

=AVERAGE(10, A1, B1:B10)


SUBTOTAL 分类汇总计算

SUBTOTAL函数可对列表或数据库中的数据执行多种子总计操作例如求和、计数、平均值等常用于数据列表的汇总统计尤其适合处理包含隐藏行的数据。基本语法

=SUBTOTAL(function_num, ref1, [ref2], ...)

参数说明

  • function_num:必需参数。指定要使用的函数类型。function_num 可以是 1 到 11 之间的任意数字,或者是 101 到 111 之间的任意数字。101 到 111 之间的数字与 1 到 11 之间相对应,但它们会忽略隐藏行中的数据以及任何由过滤器排除的数据
序号值 描述
1 AVERAGE - 计算平均值
2 COUNT - 计数(非空单元格)
3 COUNTA - 计数(所有非空单元格)
4 MAX - 最大值
5 MIN - 最小值
6 PRODUCT - 乘积
7 STDEV - 估算标准偏差(样本)
8 STDEVP - 估算标准偏差(总体)
9 SUM - 求和
10 VAR - 估算方差(样本)
11 VARP - 估算方差(总体)
  • ref1, ref2, ...必需参数。1 到 254 个区域或引用,其中包含要汇总的数据

说明

  • SUBTOTAL 函数支持多种不同的汇总功能
  • 当使用 101 到 111 之间的 function_num 时,SUBTOTAL 函数能够忽略隐藏的行和由自动筛选排除的行
  • 当使用 1 到 11 之间的 function_num 时,SUBTOTAL 函数不会忽略隐藏的行
  • SUBTOTAL 函数在处理大型数据列表时非常有用,尤其是当数据列表中可能有用户手动隐藏某些行时
  • SUBTOTAL 函数可以嵌套在其他函数中使用,比如 IF 函数,以实现更复杂的逻辑处理
  • 如果 function_num 不在上述列表中,则 SUBTOTAL 函数会返回错误
  • 如果 ref1, ref2, ... 引用的单元格为空,SUBTOTAL 函数将忽略这些单元格
  • SUBTOTAL 函数可以与 Excel 的数据筛选功能结合使用,以快速获取特定筛选条件下的汇总数据

案例

计算区域内的总和,忽略隐藏行

=SUBTOTAL(9, A1:A10)

计算区域内的总和,考虑隐藏行

=SUBTOTAL(109, A1:A10)

计算区域内的平均值,忽略隐藏行

=SUBTOTAL(1, A1:A10)

计算区域内的最大值,忽略隐藏行

=SUBTOTAL(5, A1:A10)

计算区域内非空单元格的数量,忽略隐藏行

=SUBTOTAL(2, A1:A10)

A B C
产品 销售额 数量
Apple 50 100
Banana 30 50
Apple 40 75
Orange 60 80

计算所有产品的销售额总和(忽略隐藏行)

=SUBTOTAL(9, B2:B5)

计算所有产品的数量总和,并且考虑被隐藏的行

=SUBTOTAL(109, C2:C5)

计算所有产品的平均销售额,忽略隐藏行

=SUBTOTAL(1, B2:B5)


AGGREGATE 汇总计算忽略错误值

AGGREGATE函数可执行多种汇总计算包括忽略隐藏行、忽略错误值等功能。常用于数据列表或数据库中的汇总统计特别是在需要处理隐藏行和错误值时。基本语法

=AGGREGATE(function_num, options, array, [k])

参数说明

  • function_num:必需参数。指定要使用的函数类型。function_num 可以是 1 到 19 之间的任意数字

    function_num 描述
    1 AVERAGE - 计算平均值
    2 COUNT - 计数(非空单元格)
    3 COUNTA - 计数(所有非空单元格)
    4 MAX - 最大值
    5 MIN - 最小值
    6 PRODUCT - 乘积
    7 STDEV.S - 估算标准偏差(样本)
    8 STDEV.P - 估算标准偏差(总体)
    9 SUM - 求和
    10 VAR.S - 估算方差(样本)
    11 VAR.P - 估算方差(总体)
    12 MEDIAN - 中位数
    13 MODE.SNGL - 单模态
    14 LARGE - 第 k 大的值
    15 SMALL - 第 k 小的值
    16 PERCENTILE.INC - 百分位数
    17 QUARTILE.INC - 四分位数
    18 RANK.EQ - 排名
    19 MODE.MULT - 多模态
  • options:必需参数。指定在计算过程中应如何处理隐藏行、错误值和其他特殊情况

    options 描述
    0 忽略隐藏行,忽略错误值
    1 忽略隐藏行,不忽略错误值
    2 不忽略隐藏行,忽略错误值
    3 不忽略隐藏行,不忽略错误值
    4 仅计算可见行(忽略隐藏行),忽略错误值
    5 仅计算可见行(忽略隐藏行),不忽略错误值
    6 不忽略隐藏行,忽略错误值(默认行为)
  • array:必需参数。包含要进行汇总计算的数据的数组或区域

  • [k]:可选参数。仅在使用第 14、15、16、17 或 18 项时需要。用于确定返回的值(例如第 k 大或第 k 小的值)

说明

  • AGGREGATE 函数支持多种不同的汇总功能,并且提供了更多的选项来控制如何处理隐藏行和错误值
  • 当使用 options 为 6 时,AGGREGATE 函数能够忽略隐藏的行和错误值
  • AGGREGATE 函数在处理大型数据列表时非常有用,特别是当数据列表中可能有用户手动隐藏某些行或存在错误值时
  • AGGREGATE 函数可以嵌套在其他函数中使用,比如 IF 函数,以实现更复杂的逻辑处理
  • 如果 function_num 不在上述列表中,则 AGGREGATE 函数会返回错误
  • 如果 array 引用的单元格为空,AGGREGATE 函数将忽略这些单元格
  • 如果使用了需要 [k] 参数的 function_num 但未提供 [k] 参数,AGGREGATE 函数将返回错误
  • AGGREGATE 函数可以与 Excel 的数据筛选功能结合使用,以快速获取特定筛选条件下的汇总数据

案例

计算区域内的总和,忽略隐藏行和错误值

=AGGREGATE(9, 6, A1:A10)

计算区域内的总和,考虑隐藏行,忽略错误值

=AGGREGATE(9, 2, A1:A10)

计算区域内的平均值,忽略隐藏行和错误值

=AGGREGATE(1, 6, A1:A10)

计算区域内的最大值,忽略隐藏行和错误值

=AGGREGATE(4, 6, A1:A10)

计算区域内非空单元格的数量,忽略隐藏行和错误值

=AGGREGATE(2, 6, A1:A10)

计算区域内的中位数,忽略隐藏行和错误值

=AGGREGATE(12, 6, A1:A10)

计算区域内的第 k 大的值,忽略隐藏行和错误值

=AGGREGATE(14, 6, A1:A10, 3)


LEN 统计字符串长度

LEN函数用于计算文本字符串中的字符数。基本语法

=LEN(text)

参数说明

  • text:必需参数。要计算长度的文本字符串。可以是直接输入的文本字符串、单元格引用或其他函数返回的文本结果

说明

  • LEN 函数可以接受任何文本字符串作为参数
  • LEN 函数会计算文本字符串中的所有字符,包括空格和特殊字符
  • 如果提供的参数不是文本类型,LEN 函数会尝试将其转换为文本再计算长度
  • 如果 text 参数为空字符串(""LEN 函数将返回 0
  • 如果 text 参数包含数字格式的日期或时间,LEN 函数将返回这些日期或时间的文本表示形式的长度
  • 如果 text 参数是一个单元格引用,并且该单元格包含数字而非文本,则 LEN 函数将返回该数字的文本表示形式的长度

案例

计算Hello World的长度特殊字符、空格也会被记录在内

=LEN("Hello World")

计算单元格中文本的长度

=LEN(A1)


LEFT 从左侧提取指定数量的字符

LEFT函数用于从文本字符串的左侧提取指定数量的字符。基本语法

=LEFT(text, [num_chars])

参数说明

  • text:必需参数。包含要提取字符的原始文本字符串
  • [num_chars]:可选参数。要从文本左侧提取的字符数量。默认值为 1

说明

  • LEFT 函数可以从文本字符串的左侧提取指定数量的字符
  • 如果 [num_chars] 参数省略,默认提取 1 个字符
  • 如果 [num_chars] 参数为负数,LEFT 函数将返回错误
  • 如果 [num_chars] 参数大于文本字符串的实际长度,LEFT 函数将返回整个文本字符串
  • 如果 text 参数为空字符串(""LEFT 函数将返回空字符串
  • 如果 [num_chars] 参数为 0LEFT 函数也将返回空字符串
  • 如果 [num_chars] 参数大于 text 的长度,LEFT 函数将返回整个文本字符串

案例

提取单个字符

=LEFT("Hello World")

提取多个字符

=LEFT("Hello World", 5)

提取单元格中的字符

=LEFT(A1, 3)

提取单元格中全部字符

=LEFT(A1)


RIGHT 从右侧提取指定数量的字符

RIGHT函数用于从文本字符串的右侧提取指定数量的字符。基本语法

=RIGHT(text, [num_chars])

参数说明

  • text :必须参数,包含要提取字符的文本字符串
  • [num_chars] 可选参数指定从文本字符串末尾开始要提取的字符数。如果省略则默认为1

说明

  • RIGHT 函数可以从文本字符串的右侧提取指定数量的字符
  • 如果 [num_chars] 参数省略,默认提取 1 个字符
  • 如果 [num_chars] 参数为负数,RIGHT 函数将返回错误
  • 如果 [num_chars] 参数大于文本字符串的实际长度,RIGHT 函数将返回整个文本字符串
  • 如果 text 参数为空字符串(""RIGHT 函数将返回空字符串
  • 如果 [num_chars] 参数为 0RIGHT 函数也将返回空字符串
  • 如果 [num_chars] 参数大于 text 的长度,RIGHT 函数将返回整个文本字符串

案例

提取单个字符

=RIGHT("Hello World")

提取多个字符

=RIGHT("Hello World", 5)

提取单元格中的字符

=RIGHT(A1, 3)

提取单元格中全部字符

=RIGHT(A1)


MID 从指定位置提取指定数量的字符

MID函数用于从文本字符串中的指定位置开始提取指定数量的字符。基本语法

=MID(text, start_num, num_chars)

参数说明

  • text:必需参数。包含要提取字符的原始文本字符串
  • start_num:必需参数。要开始提取字符的位置(索引)。索引从 1 开始
  • num_chars:必需参数。要提取的字符数量

说明

  • MID 函数可以从文本字符串的任意位置开始提取指定数量的字符
  • 如果 start_num 参数大于文本字符串的实际长度,MID 函数将返回空字符串
  • 如果 start_num 参数为负数,MID 函数将返回错误
  • 如果 num_chars 参数为负数,MID 函数将返回错误
  • 如果 num_chars 参数大于从 start_num 开始到文本字符串结尾的字符数量,MID 函数将返回从 start_num 开始到文本字符串结尾的所有字符
  • 如果 text 参数为空字符串(""MID 函数将返回空字符串
  • 如果 start_num 参数为 0MID 函数将返回空字符串
  • 如果 num_chars 参数为 0MID 函数也将返回空字符串
  • 如果 start_num 参数加上 num_chars 超出了 text 的长度,MID 函数将返回从 start_num 开始到文本字符串结尾的所有字符

案例

提取指定位置单个字符(从第一个字符开始提取一个字符)

=MID("Hello World", 1, 1)

提取指定位置的多个字符(从第七个字符开始提取五个字符)

=MID("Hello World", 7, 5)

提取单元格中的文本(从第三个字符开始提取三个字符)

=MID(A1, 3, 3)

提取单元格中的全部剩余文本

=MID(A1, 7, LEN(A1)-6)


TRIM 去空格

TRIM函数用于删除文本字符串首尾的空格并将内部连续的空格压缩为单个空格。基本语法

=TRIM(text)

参数说明

  • text:必需参数。要清理空格的原始文本字符串

说明

  • TRIM 函数可以接受任何文本字符串作为参数
  • TRIM 函数会删除文本字符串首尾的空格,并将内部连续的空格压缩为单个空格
  • 如果提供的参数本身不包含多余的空格,TRIM 函数将返回原样
  • 如果 text 参数为空字符串(""TRIM 函数将返回空字符串
  • TRIM 函数不会改变文本字符串中的其他字符,只处理空格
  • TRIM 函数不会删除文本字符串中的非空格字符

案例

清理直接输入的文本 => 结果将是 "Hello World"

=TRIM(" Hello World ")

清理单元格中的文本 => 如果 A1 单元格包含 " Hello World ",结果将是 "Hello World"

=TRIM(A1)

清理包含特殊字符的文本 => 结果将是 "Hello World!"

=TRIM(" Hello World! ")


LOWER 字母转换小写

LOWER函数用于将文本字符串中的所有字母转换为小写。基本语法

=LOWER(text)

参数说明

  • text:必需参数。要转换为小写的原始文本字符串

说明

  • LOWER 函数可以接受任何文本字符串作为参数
  • LOWER 函数会将文本字符串中的所有字母转换为小写
  • 如果提供的参数中包含非字母字符(如数字或特殊符号),这些字符将保持不变
  • 如果 text 参数为空字符串(""LOWER 函数将返回空字符串
  • LOWER 函数不会改变文本字符串中的数字或特殊字符

案例

转换直接输入的文本

=LOWER("Hello World")

转换单元格中的文本

=LOWER(A1)

转换包含特殊字符的文本

=LOWER("Hello World!")

转换包含数字的文本

=LOWER("Hello World 123")


UPPER 字符转换大写

UPPER函数用于将文本字符串中的所有字母转换为大写。基本语法

=UPPER(text)

参数说明

  • text:必需参数。要转换为大写的原始文本字符串

说明

  • UPPER 函数可以接受任何文本字符串作为参数
  • UPPER 函数会将文本字符串中的所有字母转换为大写
  • 如果提供的参数中包含非字母字符(如数字或特殊符号),这些字符将保持不变
  • 如果 text 参数为空字符串(""UPPER 函数将返回空字符串
  • UPPER 函数不会改变文本字符串中的数字或特殊字符

案例

转换直接输入的文本

=UPPER("Hello World")

转换单元格中的文本

=UPPER(A1)

转换包含特殊字符的文本

=UPPER("Hello World!")

转换包含数字的文本

=UPPER("Hello World 123")


PROPER 首字母大写

PROPER函数用于将文本字符串中的每个单词的首字母转换为大写其余字母转换为小写。基本语法

=PROPER(text)

参数说明

  • text:必需参数。要转换格式的原始文本字符串

说明

  • PROPER 函数可以接受任何文本字符串作为参数
  • PROPER 函数会将文本字符串中的每个单词的首字母转换为大写,其余字母转换为小写
  • 如果提供的参数中包含非字母字符(如数字或特殊符号),这些字符将保持不变
  • PROPER 函数认为由空格分隔的部分为单词
  • 如果 text 参数为空字符串(""PROPER 函数将返回空字符串
  • PROPER 函数不会改变文本字符串中的数字或特殊字符
  • PROPER 函数将根据空格来判断单词的边界。如果单词之间没有空格,PROPER 函数会将它们视为一个单词

案例

转换直接输入的文本

=PROPER("hello world")

转换单元格中的文本

=PROPER(A1)

转换包含特殊字符的文本

=PROPER("hello world!")

转换包含数字的文本

=PROPER("hello world 123")


CONCATENATE 多个字符串合并

CONCATENATE函数用于将两个或多个文本字符串合并成一个单一的文本字符串。基本语法

=CONCATENATE(text1, [text2], ...)

参数说明

  • text1:必需参数。要合并的第一个文本字符串
  • [text2], ...:可选参数。要合并的额外文本字符串

说明

  • CONCATENATE 函数可以接受任何文本字符串作为参数
  • CONCATENATE 函数可以接受多个参数,将它们按顺序连接起来
  • 如果提供的参数包含数字,CONCATENATE 函数会将数字转换为文本字符串并连接
  • 如果提供的参数包含单元格引用,CONCATENATE 函数会将单元格的内容作为文本字符串连接
  • 如果 text1 参数为空字符串(""CONCATENATE 函数将返回空字符串
  • 如果 text1 参数之后的参数为空,CONCATENATE 函数将跳过这些参数
  • 如果 text1 参数之后的参数为数字,CONCATENATE 函数会将数字转换为文本字符串并连接

案例

合并直接输入的文本

=CONCATENATE("Hello", " ", "World")

合并单元格中的文本

=CONCATENATE(A1, " ", B1)

合并包含特殊字符的文本

=CONCATENATE("Hello", " ", "World!", "!")

合并包含数字的文本

=CONCATENATE("Hello", " ", "World", 123)


FIND 在字符串中查找另一字符串的起始位置

FIND函数用于在一个文本字符串中查找另一个文本字符串的起始位置。基本语法

=FIND(find_text, within_text, [start_num])

参数说明

  • find_text: 必需参数。要在 within_text 中查找的文本字符串
  • within_text: 必需参数。包含 find_text 的文本字符串
  • [start_num]: 可选参数。从 within_text 的哪个位置开始搜索 find_text。默认值为 1即从文本字符串的起始位置开始搜索

说明

  • FIND 函数可以接受任何文本字符串作为参数
  • FIND 函数返回 find_textwithin_text 中首次出现的位置
  • 如果 find_text 不存在于 within_text 中,FIND 函数将返回错误值 #VALUE!
  • FIND 函数区分大小写
  • 如果 [start_num] 参数为负数,FIND 函数将返回错误值 #VALUE!
  • 如果 [start_num] 参数大于 within_text 的长度,FIND 函数将返回错误值 #VALUE!
  • 如果 find_text 参数为空字符串(""FIND 函数将返回 1因为一个空字符串可以在任何位置找到
  • 如果 within_text 参数为空字符串(""FIND 函数将返回错误值 #VALUE!,因为无法在空字符串中查找
  • FIND 函数区分大小写,因此 "Hello" 和 "hello" 被视为不同的字符串

案例

查找直接输入的文本

=FIND("World", "Hello World")

查找单元格中的文本

=FIND("World", A1)

从指定位置开始查找

=FIND("World", "Hello World", 5)


REPLACE 替换字符串一部分内容

REPLACE函数用于替换文本字符串中的一部分内容。基本语法

=REPLACE(old_text, start_num, num_chars, new_text)

参数说明

  • old_text: 必需参数。原始文本字符串
  • start_num: 必需参数。要开始替换的位置(索引)。索引从 1 开始
  • num_chars: 必需参数。要替换的字符数量
  • new_text: 必需参数。用来替换 old_text 中指定位置的文本字符串

说明

  • REPLACE 函数可以接受任何文本字符串作为参数
  • REPLACE 函数允许您指定要替换的文本字符串的位置和长度
  • 如果 start_num 参数大于 old_text 的长度,REPLACE 函数将返回原始文本字符串
  • 如果 num_chars 参数为负数,REPLACE 函数将返回错误值 #VALUE!
  • 如果 num_chars 参数为 0REPLACE 函数将在指定位置插入 new_text,不会替换任何字符
  • 如果 start_num 加上 num_chars 超出了 old_text 的长度,REPLACE 函数将替换从 start_num 开始到文本字符串结尾的所有字符
  • 如果 old_text 参数为空字符串(""REPLACE 函数将返回空字符串
  • 如果 start_num 参数为 0REPLACE 函数将返回错误值 #VALUE!
  • 如果 start_num 参数加上 num_chars 超过了 old_text 的长度,REPLACE 函数将替换从 start_num 开始到文本字符串结尾的所有字符

案例

替换直接输入的文本

=REPLACE("Hello World", 7, 5, "Universe")

替换单元格中的文本

=REPLACE(A1, 7, 5, "Universe")

替换指定位置的文本

=REPLACE("Hello World", 7, 5, "Universe")


SUBSTITUTE 替换字符串内的指定文本

SUBSTITUTE函数用于替换文本字符串中的指定文本。基本语法

=SUBSTITUTE(text, old_text, new_text, [instance_num])

参数说明

  • text: 必需参数。原始文本字符串
  • old_text: 必需参数。要替换的文本
  • new_text: 必需参数。用来替换 old_text 的新文本
  • [instance_num]: 可选参数。要替换的 old_text 实例的编号。如果不指定,则替换所有实例

说明

  • SUBSTITUTE 函数可以接受任何文本字符串作为参数
  • SUBSTITUTE 函数允许您替换文本字符串中的指定文本
  • 如果 [instance_num] 参数省略,默认替换所有实例
  • 如果 [instance_num] 参数为正整数,SUBSTITUTE 函数将替换指定编号的实例
  • 如果 [instance_num] 参数为负数,SUBSTITUTE 函数将返回错误值 #VALUE!
  • 如果 [instance_num] 参数大于实际的实例数,SUBSTITUTE 函数将不进行替换
  • 如果 text 参数为空字符串(""SUBSTITUTE 函数将返回空字符串
  • 如果 old_text 不存在于 text 中,SUBSTITUTE 函数将返回原始文本字符串
  • SUBSTITUTE 函数区分大小写,因此 "Hello" 和 "hello" 被视为不同的字符串

案例

替换直接输入的文本

=SUBSTITUTE("Hello World", "World", "Universe")

替换单元格中的文本

=SUBSTITUTE(A1, "World", "Universe")

替换指定位置的文本

=SUBSTITUTE("Hello World World", "World", "Universe", 2)


VALUE 将文本字符串转换为数值

VALUE函数用于将文本字符串转换为数值。基本语法

=VALUE(text)

参数说明

  • text: 必需参数。要转换为数值的文本字符串

说明

  • VALUE 函数可以接受任何看起来像数字的文本字符串作为参数
  • VALUE 函数将尝试将文本字符串转换为数值
  • 如果文本字符串不能被解释为数字,VALUE 函数将返回错误值 #VALUE!
  • 如果 text 参数不是有效的数字文本,VALUE 函数将返回错误值 #VALUE!
  • VALUE 函数不会改变文本字符串中的非数字字符。如果文本字符串包含除了数字和小数点/负号以外的其他字符,VALUE 函数将返回错误
  • 当文本字符串中的小数点与区域设置中的小数点符号不匹配时,VALUE 函数可能无法正确转换文本

案例

转换直接输入的文本

=VALUE("123")

转换包含小数的文本

=VALUE("123.45")

转换单元格中的文本

=VALUE(A1)


TEXT 数值格式转化成字符串

TEXT函数用于将数值格式化为文本字符串并应用指定的数字格式。基本语法

=TEXT(value, format_text)

参数说明

  • value: 必需参数。要格式化的数值
  • format_text: 必需参数。用于指定 value 的数字格式的文本字符串
    • General:
      • General: 默认格式Excel 自动选择最适合的格式
    • Number:
      • #,##0: 整数格式,千位分隔符
      • #,##0.00: 浮点数格式,两位小数,千位分隔符
      • 0.00: 浮点数格式,两位小数,无千位分隔符
      • #0.00: 浮点数格式,两位小数,只有当需要时才显示小数点
      • 0:整数格式,会将其四舍五入到最接近的整数
    • Currency:
      • $#,##0.00: 货币格式,美元符号,两位小数,千位分隔符
      • [$#,##0.00]: 货币格式,美元符号,两位小数,千位分隔符,括号表示负数
      • €#,##0.00: 欧元格式,欧元符号,两位小数,千位分隔符
      • £#,##0.00: 英镑格式,英镑符号,两位小数,千位分隔符
    • Date and Time:
      • mm/dd/yyyy: 美国日期格式,月/日/年
      • dd.mm.yyyy: 欧洲日期格式,日.月.年
      • yyyy-mm-dd: ISO 8601 国际标准日期格式,年-月-日
      • hh:mm AM/PM: 时间格式12小时制AM/PM 标志
      • hh:mm:ss: 时间格式,小时:分钟:秒
      • yyyy-mm-dd hh:mm:ss: 完整日期时间格式
    • Percentage:
      • 0%: 百分比格式,一位小数
      • 0.0%: 百分比格式,两位小数
    • Fractional:
      • # ?/?: 分数格式,最大分母为 127
      • # ??/??: 分数格式,最大分母为 1023
    • Scientific Notation:
      • 0.00E+00: 科学记数法格式,两位小数
    • Custom Formats:
      • [>9999]#,#0.00;[<=9999]#0.00: 自定义格式,大于 9999 时显示带千位分隔符的小数格式,小于等于 9999 时不带千位分隔符
      • 0.00_);[Red](0.00): 自定义格式,正常情况下显示浮点数,负数时显示红色字体
      • 0.00_);(0.00): 自定义格式,正常情况下显示浮点数,负数时显示括号
      • 0.00_);[Red](0.00)_);[Blue]---;[Green]+++: 自定义格式,正常情况下显示浮点数,负数时显示红色字体,零值时显示蓝色破折号,正数时显示绿色加号

说明

  • TEXT 函数可以接受任何数值作为参数
  • TEXT 函数允许您指定输出文本字符串的数字格式
  • TEXT 函数返回的文本字符串可以包含各种数字格式,如货币、日期、时间、分数、科学记数法等
  • TEXT 函数返回的结果是文本字符串,这意味着它不能直接参与数学运算
  • 如果 value 参数为错误值,TEXT 函数将返回错误
  • 如果 format_text 参数不符合 Excel 的数字格式规则,TEXT 函数将返回错误
  • TEXT 函数返回的文本字符串不能直接用于数学运算,但可以用于文本处理或显示目的

案例

A
12345.67
2024-07-30
0.5

将 A1 单元格中的数值格式化成$12,345.67

=TEXT(A1, "$#,##0.00")

格式化包含特殊字符的数值

=TEXT(A1, "[>9999]#, #0 .00;[<=9999] #0 .00")

对于 "12345.67",结果将是 "12,345.67"; 对于 "2024-07-30",结果将是 "30/07/2024"; 对于 "0.5",结果将是 "0.5"


MAX 取得最大值

MAX函数用于找出一组数值中的最大值。基本语法

=MAX(number1, [number2], ...)

参数说明

  • number1: 必需参数。第一个数值或数值范围
  • [number2], ...: 可选参数。其他数值或数值范围

说明

  • MAX 函数可以接受任何数值或数值范围作为参数
  • MAX 函数可以接受多个参数,返回所有参数中的最大值
  • 如果提供的参数中包含文本或逻辑值 TRUEFALSE,这些值将被忽略
  • 如果所有参数都是空单元格或文本,MAX 函数将返回错误值 #DIV/0!
  • 如果提供的参数中包含逻辑值 TRUEFALSE,这些值将被忽略,除非它们直接作为参数输入
  • MAX 函数可以处理多个参数,包括单元格引用、常量和数组

案例

找出输入值中的最大值

=MAX(10, 20, 30, 40)

找出单元格中的最大值

=MAX(A1:A10)

找出多个范围内的最大值

=MAX(A1:A10, B1:B10)


MAXIFS 在特定条件下找出最大值

MAXIFS函数用于找出一组数值中的最大值同时满足一个或多个条件。参数说明

=MAXIFS(max_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

参数说明

  • max_range: 必需参数。包含要找出最大值的数值范围
  • criteria_range1: 必需参数。第一个条件范围,用于应用 criteria1
  • criteria1: 必需参数。应用于 criteria_range1 的条件
  • [criteria_range2, criteria2], ...: 可选参数。额外的条件范围及其对应的条件

说明

  • MAXIFS 函数可以接受多个条件范围及其对应的条件
  • MAXIFS 函数可以处理复杂的条件,包括文本、数字和逻辑表达式
  • 如果提供的条件范围中没有符合所有条件的值,MAXIFS 函数将返回错误值 #DIV/0!
  • 如果所有参数都是空单元格或文本,MAXIFS 函数将返回错误值 #DIV/0!
  • 如果提供的条件范围中没有符合所有条件的值,MAXIFS 函数将返回错误值 #DIV/0!
  • MAXIFS 函数可以处理多个参数,包括单元格引用、常量和数组

案例

找出A1:A10单元格中对应于B1:B10单元格小于10的最大值

=MAXIFS(A1:A10, B1:B10, "<10")

找出 A1:A10 中对应于 B1:B10 大于 10 且 C1:C10 小于 20 的最大值

=MAXIFS(A1:A10, B1:B10, ">10", C1:C10, "<20")

A B C
10 5 20
20 10 15
30 15 10
40 20 5
30 25 Text

找出 A 列中满足 B 列大于 10 且 C 列小于 20 的最大值( "Text" 不会被考虑为数值,所以 MAXIFS 函数将忽略它)

=MAXIFS(A1:A4, B1:B4, ">10", C1:C4, "<20")

找出 A 列中满足 B 列大于 10 的最大值

=MAXIFS(A1:A4, B1:B4, ">10")


MIN 取得最小值

MIN函数用于找出一组数值中的最小值。基本语法

=MIN(number1, [number2], ...)

参数说明

  • number1: 必需参数。第一个数值或数值范围
  • [number2], ...: 可选参数。其他数值或数值范围

说明

  • MIN 函数可以接受任何数值或数值范围作为参数
  • MIN 函数可以接受多个参数,返回所有参数中的最小值
  • 如果提供的参数中包含文本或逻辑值 TRUEFALSE,这些值将被忽略
  • 如果所有参数都是空单元格或文本,MIN 函数将返回错误值 #DIV/0!
  • 如果提供的参数中包含逻辑值 TRUEFALSE,这些值将被忽略,除非它们直接作为参数输入
  • MIN 函数可以处理多个参数,包括单元格引用、常量和数组

案例

找出输入值中的最小值

=MIN(10, 20, 30, 40)

找出单元格中的最小值

=MIN(A1:A10)

找出多个范围内的最小值

=MIN(A1:A10, B1:B10)


MINIFS 在特定条件下找出最小值

MINIFS函数用于找出一组数值中的最小值同时满足一个或多个条件。基础语法

=MINIFS(min_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

参数说明

  • min_range: 必需参数。包含要找出最小值的数值范围
  • criteria_range1: 必需参数。第一个条件范围,用于应用 criteria1
  • criteria1: 必需参数。应用于 criteria_range1 的条件
  • [criteria_range2, criteria2], ...: 可选参数。额外的条件范围及其对应的条件

说明

  • MINIFS 函数可以接受多个条件范围及其对应的条件
  • MINIFS 函数可以处理复杂的条件,包括文本、数字和逻辑表达式
  • 如果提供的条件范围中没有符合所有条件的值,MINIFS 函数将返回错误值 #DIV/0!
  • 如果所有参数都是空单元格或文本,MINIFS 函数将返回错误值 #DIV/0!
  • 如果提供的条件范围中没有符合所有条件的值,MINIFS 函数将返回错误值 #DIV/0!
  • MINIFS 函数可以处理多个参数,包括单元格引用、常量和数组

案例

找出A1:A10单元格中对应于B1:B10单元格大于10的最小值

=MINIFS(A1:A10, B1:B10, ">10")

找出 A1:A10 中对应于 B1:B10 大于 10 且 C1:C10 小于 20 的最小值

=MINIFS(A1:A10, B1:B10, ">10", C1:C10, "<20")

A B C
10 5 20
20 10 15
30 15 10
40 20 5
30 25 Text

找出 A 列中满足 B 列大于 10 且 C 列小于 20 的最小值( "Text" 不会被考虑为数值,所以 MINIFS 函数将忽略它)

=MINIFS(A1:A4, B1:B4, ">10", C1:C4, "<20")

找出 A 列中满足 B 列大于 10 的最小值

=MINIFS(A1:A4, B1:B4, ">10")


ISNUMBER 判断一个值是否为数字

ISNUMBER函数用于检查一个值是否为数字。基本语法

=ISNUMBER(value)

参数说明

  • value: 必需参数。要测试的值或单元格引用

说明

  • ISNUMBER 函数可以接受任何类型的值作为参数
  • ISNUMBER 函数返回 TRUE 如果参数是数字,否则返回 FALSE
  • ISNUMBER 函数可以用于验证公式或函数的结果是否为预期的数字类型
  • ISNUMBER 函数会返回 FALSE 如果 value 参数是文本字符串,即使该文本看起来像数字(例如 "123"
  • ISNUMBER 函数会返回 FALSE 如果 value 参数是错误值,例如 #N/A#DIV/0!
  • ISNUMBER 函数可以用于数组公式中,以测试数组中所有元素是否为数字

案例

测试直接输入的值

=ISNUMBER(123)

测试单元格中的数值

=ISNUMBER(A1)

测试公式结果

=ISNUMBER(SUM(A1:A5))


ISBLANK 判断单元格是否为空

ISBLANK函数用于判断单元格是否为空。基本语法

=ISBLANK(reference)

参数说明

  • reference: 必需参数。要测试的单元格或单元格区域

说明

  • ISBLANK 函数仅接受单元格引用作为参数
  • ISBLANK 函数返回 TRUE 如果单元格完全为空,即没有任何数据或公式
  • ISBLANK 函数返回 FALSE 如果单元格包含任何类型的数据,包括公式、错误值或空白字符串 ""
  • ISBLANK 函数不会检查单元格格式或注释
  • 如果单元格包含公式但公式结果为空,ISBLANK 函数仍会返回 FALSE因为它识别到单元格中有公式存在
  • ISBLANK 函数可以用于条件格式、数据有效性检查、以及动态数组公式中,以测试和处理空单元格

案例

测试单个单元格是否为空

=ISBLANK(A1)

测试一片区域的单元格是否为空

=ISBLANK(A1:B5)


VLOOKUP 垂直查找引用函数

VLOOKUP函数用于在表格或范围的第一列查找特定值并返回同一行中指定列的值。通常在需要根据一个关键值查找并返回相关联的数据时使用。基本语法

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

参数说明

  • lookup_value: 必需参数。要查找的值。它可以是一个值或对包含查找值的单元格的引用
  • table_array: 必需参数。包含数据的表格或范围。lookup_value 应该在 table_array 的第一列中
  • col_index_num: 必需参数。table_array 中包含返回值的列号。列号为 1 表示返回 table_array 的第一列的值2 表示第二列的值,依此类推
  • [range_lookup]: 可选参数。一个逻辑值,指明函数应执行精确匹配还是近似匹配。如果为 TRUE 或省略,则执行近似匹配;如果为 FALSE则执行精确匹配

说明

  • VLOOKUP 函数只能在 table_array 的第一列中进行查找
  • 当执行近似查找时,table_array 的第一列必须排序,否则结果可能不准确
  • 如果找不到 lookup_valueVLOOKUP 函数将返回错误值 #N/A
  • 确保 lookup_valuetable_array 的第一列中
  • 如果 range_lookup 参数为 FALSE 或省略,且 lookup_value 不存在于 table_array 中,VLOOKUP 将返回错误值 #N/A
  • 当执行近似查找时,如果 lookup_value 小于 table_array 第一列中的最小值,VLOOKUP 也将返回错误值 #N/A

案例

A B
Product Price
Apple $2.50
Banana $0.75
Cherry $3.00

查找 "Banana" 的价格

=VLOOKUP("Banana", A2:B4, 2, FALSE)

查找整个表格中产品的价格

=VLOOKUP(A2:A4, A2:B4, 2, FALSE)

查找一个不存在的产品的价格(结果是#N/A

=VLOOKUP("Orange", A2:B4, 2, FALSE)


HLOOKUP 水平查找引用函数

HLOOKUP函数用于在表格或范围的第一行查找特定值并返回同一列中指定行的值。通常在需要基于一个关键值查找并返回相关联的数据时使用特别适用于数据以行为主导的布局。基本语法

=HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])

参数说明

  • lookup_value: 必需参数。要查找的值。它可以是一个值或对包含查找值的单元格的引用
  • table_array: 必需参数。包含数据的表格或范围。lookup_value 应该在 table_array 的第一行中
  • row_index_num: 必需参数。table_array 中包含返回值的行号。行号为 1 表示返回 table_array 的第一行的值2 表示第二行的值,依此类推
  • [range_lookup]: 可选参数。一个逻辑值,指明函数应执行精确匹配还是近似匹配。如果为 TRUE 或省略,则执行近似匹配;如果为 FALSE则执行精确匹配

说明

  • HLOOKUP 函数只能在 table_array 的第一行中进行查找
  • 当执行近似查找时,table_array 的第一行必须排序,否则结果可能不准确
  • 如果找不到 lookup_valueHLOOKUP 函数将返回错误值 #N/A
  • 确保 lookup_valuetable_array 的第一行中
  • 如果 range_lookup 参数为 FALSE 或省略,且 lookup_value 不存在于 table_array 中,HLOOKUP 将返回错误值 #N/A
  • 当执行近似查找时,如果 lookup_value 小于 table_array 第一行中的最小值,HLOOKUP 也将返回错误值 #N/A

案例

A B C
Product Jan Feb
Apple $2.50 $2.75
Banana $0.75 $0.80
Cherry $3.00 $3.25

查找 "Apple" 在二月份的价格

=HLOOKUP("Apple", A1:C4, 3, FALSE)

找整个表格中产品在一月份的价格

=HLOOKUP(B1:B3, A1:C4, 2, FALSE)

查找一个不存在的产品的价格

=HLOOKUP("Orange", A1:C4, 3, FALSE)


XLOOKUP 查找引用函数

XLOOKUP函数用于在表格或范围中查找特定值并返回与之相关联的另一个值。通常在需要查找数据并返回相关联的信息时使用特别是在需要更灵活和强大查找选项的情况下。基本语法

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

参数说明

  • lookup_value: 必需参数。要查找的值
  • lookup_array: 必需参数。包含查找值的范围或数组
  • return_array: 必需参数。与 lookup_array 关联的范围或数组,从中返回查找结果
  • [if_not_found]: 可选参数。如果没有找到匹配项,此参数定义了返回的值。如果省略,默认返回 #N/A 错误
  • [match_mode]: 可选参数。定义了匹配模式
    • 0 或省略:精确匹配
    • -1精确匹配或下一个小于 lookup_value 的值(近似匹配)
    • 1精确匹配或下一个大于 lookup_value 的值(近似匹配)
  • [search_mode]: 可选参数。定义了查找的方向
    • 1 或省略:从左到右(或从上到下)
    • -1从右到左或从下到上
    • 2二分查找要求 lookup_array 排序
    • -2二分查找从后向前要求 lookup_array 排序。

说明

  • XLOOKUP 函数可以执行精确匹配和近似匹配
  • 它可以处理多种查找方向,包括从左到右、从右到左、从上到下和从下到上
  • 它允许定义未找到匹配项时的返回值
  • XLOOKUP 函数在查找未找到的情况下返回的错误可以自定义,而不必总是返回 #N/A
  • 确保 lookup_array 正确排序,特别是当你使用近似匹配和二分查找模式时
  • 如果 lookup_arrayreturn_array 长度不一致,XLOOKUP 函数可能会返回错误结果

案例

A B
Apple $2.50
Banana $0.75
Cherry $3.00

查找 "Banana" 的价格

=XLOOKUP("Banana", A2:A4, B2:B4)

找一个不存在的产品的价格,并返回默认值

=XLOOKUP("Orange", A2:A4, B2:B4, "Product not found")

近似查找,返回最接近但不大于查找值的项

=XLOOKUP(15, A2:A10, B2:B10, NA(), -1)


COUNTIFS 根据一组条件计数满足所有条件的单元格数量

COUNTIFS函数用于根据一组条件计数满足所有条件的单元格数量。它可以用来统计多个范围内的单元格数目这些单元格必须同时满足指定的条件。基本语法

=COUNTIFS(range1, criteria1, [range2], [criteria2], ...)

参数说明

  • range1: 第一个条件范围,是你希望应用条件的第一个范围
  • criteria1: 第一个条件,定义了在range1中要计数的单元格必须满足的标准
  • [range2], [criteria2]: 可选的附加范围和条件对。最多可以指定127个范围/条件对

说明

  • 条件可以使用文本、数字或表达式。例如,“>100”表示大于100
  • 如果条件范围中有空白单元格,则它们不会被计数
  • COUNTIFS 对大小写敏感。如果条件是文本,确保大小写一致
  • 条件可以是通配符,如星号(*)表示任意字符,问号(?)表示单个字符

案例

假设我们有一个销售表其中A列为产品名称B列为地区C列为销售额我们可以使用COUNTIFS来统计特定产品在特定地区的销售次数

=COUNTIFS(A:A, "苹果", B:B, "北区")

找出A、B、C三列中完全相同的行的数量输出值为1代表是唯一行若输出为0则代表该行中有某列数据存在问题

=COUNTIFS(A:A,A1,B:B,B1,C:C,C1)