SUMPRODUCT函数基础

2024-01-15 19:58
文章标签 基础 函数 sumproduct

本文主要是介绍SUMPRODUCT函数基础,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SUMPRODUCT函数是一个数组类型的函数,能够计算多个区域的数值相乘后之和。其语法为:

SUMPRODUCT(数组1,数组2,数组3,……)

返回数组(区域)中对应项相乘后的和。
例如下图所示的工作表数据:
sumproductsample1
要求将列A和列B中同一行的数据相乘后的结果相加,即:

A1×B1+ A2×B2+ A3×B3+…+ A10×B10

可使用如单元格C3中的公式:

=SUMPRODUCT(A1:A10,B1:B10)

如果将单元格区域A1:A10命名为“DataA”,将单元格区域B1:B10命名为“DataB”,那么可以使用公式:

=SUMPRODUCT(DataA,DataB)

说明:

  • 在SUMPRODUCT函数的参数中,数组的大小必须相等,否则将返回#NUM!错误。
  • SUMPRODUCT函数将数组中不是数字的数组元素作为0对待。

(应用)基于两个条件汇总数据
例如,下表所示的数据:
sumproductsample2
现在要求华东区域产品B的销售量,则可使用下面的公式:

=SUMPRODUCT((C2:C10)*(A2:A10=”华东”)*(B2:B10=”B”))

结果为100。
其中:

  • C2:C10为包含销售量的单元格区域
  • 通过A2:A10=”华东”产生一个数值为1,0的数组,即如果列A中的数据为华东则值为1,否则为0
  • 同理,通过B2:B10=”B”产生一个数值为1,0的数组
  • SUMPRODUCT函数将这些数组分别相乘后相加即得到结果

探讨
有时,如果不合适地应用SUMPRODUCT函数,将会得不到正确的结果。例如,下表所示数据:
sumproductsample3
现在要求华中区域与目标日时间差为负数的项目的销售额。
其中,将单元格区域“A2:A10”命名为“区域”,将单元格区域“B2:B10”命名为“销售额”,将单元格区域“C2:C10”命名为“时差”。
如果我们输入下面的公式:

=SUMPRODUCT((时差<0),(区域="华中"),销售额)

将得不到正确的结果。由于某种原因,SUMPRODUCT函数不能正确处理布尔值,因此公式无效。
下面的公式在SUMPRODUCT函数中将布尔值乘以1,将得到正确的结果:

=SUMPRODUCT(1*(时差<0),1*(区域="华中"),销售额)

也可以像上例一样,使用下面的公式:

=SUMPRODUCT(销售额*(区域=”华中”)*(时差<0))

这篇关于SUMPRODUCT函数基础的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/610044

相关文章

C语言字符函数和字符串函数示例详解

《C语言字符函数和字符串函数示例详解》本文详细介绍了C语言中字符分类函数、字符转换函数及字符串操作函数的使用方法,并通过示例代码展示了如何实现这些功能,通过这些内容,读者可以深入理解并掌握C语言中的字... 目录一、字符分类函数二、字符转换函数三、strlen的使用和模拟实现3.1strlen函数3.2st

MySQL中COALESCE函数示例详解

《MySQL中COALESCE函数示例详解》COALESCE是一个功能强大且常用的SQL函数,主要用来处理NULL值和实现灵活的值选择策略,能够使查询逻辑更清晰、简洁,:本文主要介绍MySQL中C... 目录语法示例1. 替换 NULL 值2. 用于字段默认值3. 多列优先级4. 结合聚合函数注意事项总结C

Java8需要知道的4个函数式接口简单教程

《Java8需要知道的4个函数式接口简单教程》:本文主要介绍Java8中引入的函数式接口,包括Consumer、Supplier、Predicate和Function,以及它们的用法和特点,文中... 目录什么是函数是接口?Consumer接口定义核心特点注意事项常见用法1.基本用法2.结合andThen链

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

golang panic 函数用法示例详解

《golangpanic函数用法示例详解》在Go语言中,panic用于触发不可恢复的错误,终止函数执行并逐层向上触发defer,最终若未被recover捕获,程序会崩溃,recover用于在def... 目录1. panic 的作用2. 基本用法3. recover 的使用规则4. 错误处理建议5. 常见错

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

Java function函数式接口的使用方法与实例

《Javafunction函数式接口的使用方法与实例》:本文主要介绍Javafunction函数式接口的使用方法与实例,函数式接口如一支未完成的诗篇,用Lambda表达式作韵脚,将代码的机械美感... 目录引言-当代码遇见诗性一、函数式接口的生物学解构1.1 函数式接口的基因密码1.2 六大核心接口的形态学