Excel不在工作表上显示公式结果,但F9显示正确的值

时间:2016-04-28 07:29:16

标签: excel excel-formula

我正在制作excel表格而且我遇到过一个我以前从未遇到过的问题。我试图对数组函数的结果求和,但是我没有从表单上的总和得到任何结果 - 只是空白单元格。奇怪的部分是当我在公式栏中按 F9 时,它显示应该在工作表上的单元格中显示的正确求和值。我只是不知道为什么值会出现在公式栏中,而不是出现在表单上的单元格中。其他论坛提到改变计算选项(当然是自动)或者显示零',它只是将单元格更改为零而不是空白。 F9 仍显示正确的值。这是公式:

{=SUM(OFFSET(INDIRECT("Sheet1!E"&IF(ISERROR(MATCH($A$2:$A$15&$C$1,Sheet1!$C$2:$C$51,0)),
1000,MATCH($A$2:$A$15&$C$1,Sheet1!$C$2:$C$51,0))),0,ROW(1:1)))}

匹配获取我需要求和的数字的行索引。 (E1000只是在没有匹配时的默认值,并且引用其中包含0的单元格)。如果我从函数中删除总和并使用 F9 ,我可以看到实际数组中要求求和的数字。这让我很困惑。一切似乎都正确评估,它只是没有显示在工作表上。谢谢你的帮助!

8 个答案:

答案 0 :(得分:2)

我知道这个帖子已经有几个月了,但对于遇到此问题的人,请尝试检查循环引用。您的公式可能至少有一个。

要检查:单击“公式”选项卡,单击“错误检查”旁边的箭头,指向“循环引用”,然后单击子菜单中列出的第一个单元格。

推理:使用评估公式函数(F9)时,它只进行一次计算,并能够给出完整的结果。但是,如果存在循环引用,则表单中的公式将不断重新计算,因此可能永远不会有明确的结果。

答案 1 :(得分:1)

在“公式”标签上尝试“全部重新计算”。

这通过AVERAGEIF函数为我解决了类似的问题,该函数的值将正确显示在公式查看器中,但不会在工作表中显示。强制工作表重新计算所有内容,以解决我的问题。

当定义基于另一个单元格的单元格,基于其他单元格的单元格,基于其他单元格的单元格,基于其他单元格的单元格时,似乎出现了问题……有时似乎Excel放弃了并假设在某处有一个循环引用,即使在我的情况下也没有。

Excel计算所有工作表时,它将重新使用结果,并忽略单元格,直到知道其先例为止,而不是从特定单元格开始向后工作,因此,如果一个单元格依赖过多的先前单元格,它就不会感到惊讶。

答案 2 :(得分:0)

遇到同样的问题,非常令人沮丧。我找到了一个疯狂的解决方案。我不知道它为什么会起作用,但确实如此......我想我会在另一个细胞中尝试这个公式。所以我将单元格复制并粘贴到另一个单元格中......原始单元格中的公式工作正常,出现了正确的值。

答案 3 :(得分:0)

使用 SUMIFS 对数组进行三次查询时遇到此问题。我发现解决方案是将整个函数封装在括号中。我认为问题必然来自于excel在得出答案时评估公式成分的顺序。

例如,我必须添加以下括号[以粗体突出显示] =

SUMIFS( [00_COMBINED_NO_DUPLICATES.xlsx]COMBINED!$CK$2:$CK$60067,
        [00_COMBINED_NO_DUPLICATES.xlsx]COMBINED!$F$2:$F$60067,
        [@RR1],
        [00_COMBINED_NO_DUPLICATES.xlsx]COMBINED!$S$2:$S$60067,
        ">="&[@[Quarter_Starting]],
        [00_COMBINED_NO_DUPLICATES.xlsx]COMBINED!$S$2:$S$60067,
        "<"&EOMONTH([@[Quarter_Starting]],
        2
      )+1)

答案 4 :(得分:0)

将计算选项设为自动。它应该解决问题 See the screen shot

答案 5 :(得分:0)

我来到这里是因为我遇到了同样的问题,上面的内容最初并不适用于我。

我发现要执行数组功能,你必须突出显示整个公式,然后(对于Mac)按控制 + Shift + 输入

一旦我这样做,它就像一个魅力!!

答案 6 :(得分:0)

很抱歉,重新打开它,但这是一个新的解决方案。

我确实有循环引用,因此我将Excel设置为只允许它们评估一次。默认值为OFF-不评估,因此即使您的公式显示为true,也为什么每次都返回false / 0。

要打开迭代计算(即使用循环引用而不是不执行任何操作):文件->选项->公式->启用迭代计算->从100(在特殊应用中有点多余)更改为1。 / p>

链接(向下滚动至有关迭代计算的位):https://support.office.com/en-ie/article/remove-or-allow-a-circular-reference-8540bd0f-6e97-4483-bcf7-1b49cd50d123

希望这对更多人有帮助!

答案 7 :(得分:0)

有时,如果您使用带有OFFSET或INDIRECT的数组,则会出现问题。 您可以使用= N(INDIRECT(...或= N(OFFSET(

您可以在下面找到说明

Array Formula Confusion