首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Excel中如何处理布尔值?

在Excel中如何处理布尔值?
EN

Stack Overflow用户
提问于 2021-09-28 12:37:57
回答 1查看 104关注 0票数 2

我决定学习如何使用函数SumProduct(),因此我创建了一个非常基本的Excel表:

代码语言:javascript
复制
A    B
1    1
2    2

我计算了=SumProduct(A2:A3,B2:B3),结果是5,与预期的一样。

然后,我有了用=(1=1)代替=(1=1)的想法,这显然是TRUE,我看到的情况证实了这一点。

然而,=SumProduct()结果变为4,显然booleans在Excel中被视为零。

因此,我决定编写另一个公式:=A2*B2+A3*B3 (与SumProduct()完全相同),但是没有得到预期的值4,值保持在5。

显然,正则数学算子(*+,.)将boolean值视为“预期的”(TRUE变为1,FALSE变为0),但对于一些更详细的函数(如SumProduct()),情况似乎并非如此。

这背后有什么解释?我想了解发生了什么,以避免令人不快的惊喜。我想我正在使用Excel-365 (我怎么能确定呢?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-28 12:53:02

请参阅本文档:https://www.ablebits.com/office-addins-blog/2016/08/24/excel-sumproduct-function-formula-examples/

这说明您需要在值之前添加--,以便将其转换为您所期望的1或0。因此,正如您正确观察到的那样,该函数不支持布尔值。还可以使用IF函数,其第一个参数是所拥有的逻辑表达式,第二个参数为1,第三个参数为0。至于在这个函数中不支持将逻辑数据隐式转换为算术数据的原因,我认为我们无法在网上论坛上实际确定其原因,但这是一个您可以直接向函数的作者提出的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69361903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档