我有一个Excel公式,它引用其他文件中的几个单元格,格式如下: = COUNTIFS('[FILE1.xlsx]表1'!$ D $ 2:$ D $ 5000,“A”,'[FILE1.xlsx]表2'!$ H $ 2:$ H $ 5000,“B”)
当我打开此文件时,单元格值默认为#VALUE(如果FILE1.xlsx已关闭)。
搜索Microsoft支持(https://support.microsoft.com/en-us/kb/260415)这是因为SUMIF,SUMIFS,COUNTIF,COUNTIFS或COUNTBLANK等公式会在电子表格打开时自动计算。
Microsoft的解决方法是将COUNTIF替换为SUM(IF(范围=条件,1,0)作为数组输入。(COUNTIFS没有示例。)
我的问题是:如何将公式更改为SUM(IF(AND?)格式? (如果我打开电子表格并关闭源文件,我不希望我的公式试图重新计算。)
我试过= SUM(IF(AND('[FILE1.xlsx] Sheet 1'!$ D $ 2:$ D $ 5000 =“A”,'[FILE1.xlsx] Sheet 2'!$ H $ 2: $ H $ 5000 =“B”),1,0))(作为数组)
但是这会返回0。
有什么想法? (或者我必须在包含COUNTIF逻辑的源电子表格中恢复到一个笨重的第3列,这样我的文件才可以使用SUM代替......?)
答案 0 :(得分:1)
与COUNTIFS等效的数组将是:
{=SUM(IF(('[FILE1.xlsx]Sheet 1'!$D$2:$D$5000="A")*('[FILE1.xlsx]Sheet 2'!$H$2:$H$5000="B"),1,0))}
但是
=SUMPRODUCT(('[FILE1.xlsx]Sheet 1'!$D$2:$D$5000="A")*('[FILE1.xlsx]Sheet 2'!$H$2:$H$5000="B"))
也应该有用。