计算为零,其中单元格为 = *

计算为零,其中单元格为 = *

有四个单元格 a1、b1、c1、d1。a1、b1、c1 保存一个数字,d1 保存它们的总和。

有时,当该类别没有数字时,单元格可能会填充星号(*),因此我使用星号。d1 有一个公式=sum(a1:c1),但结果是!value#因为一些单元格被星号填充了。

我应该怎样编写公式来计算zero总和中的星号(*)? 在此处输入图片描述

答案1

您的图片与问题中给出的公式不符。问题中的公式不存在您所询问的问题:

=SUM(A1:C1) 

将返回 A1:C1 范围内任意数字的总和。SUM 函数将任何文本值视为零。

但是,图片中的公式会返回错误,因为如果 P1 不是数字,则 P1*150 会返回错误。如果要使用 SUM 函数将文本视为零,则必须将其应用于单元格值对其进行任何算术运算。为了允许任何单元格都是文本,请将公式替换为:

=SUM(O2)*100+SUM(P2)*150+SUM(Q2)*200

答案2

使用第 2 行解析第 1 行。例如,单元格 A2 将显示=IF(ISNUMBER(A1),A1,0)。这将用 0 替换第 2 行中的非数字。对第 2 行求和。

答案3

您的公式没有SUM计算这三个单元格。换句话说,它们并不相同=sum(A1:D1)。相反,您只是将乘积相乘并求和,因此得出了错误结果。

尝试(将单元格引用更改为您想要处理的单元格)

=SUM(IF(ISNUMBER(B2:D2),B2:D2)*{100,150,200})

按住ctrl+shift并点击以数组公式形式输入enter

如果操作正确,Excel 将{...}在公式周围放置括号。

相关内容