在Excel数组IF公式输出中排除空白/ FALSE单元格

时间:2013-03-07 20:38:41

标签: arrays excel-formula

我在使数组公式按照我希望的方式工作时遇到困难。

在未排序的日期列中,我希望它将值提取到新列中。下面的公式标识了给定月份和年份的所需单元格,但它们出现在原始行而不是输出范围之上。此外,我希望从输出数组中排除所有“”/ FALSE单元格。

=IF((MONTH($I$15:$I$1346)=1)*(YEAR($I$15:$I$1346)=2008),$I$15:$I$1346,"")

事实上,$ I $ 15:$ I $ 1346应该是动态的并且到达最后一个填充范围(我可以为其命名范围)

第二部分是扩展该公式,以便计算上述数据的两列偏移数据。

以上是否可能将IF,INDEX,SMALL和其他人组合成一个单元格?

我不是在寻找过滤器解决方案。希望以上内容足够明确,你可以提供帮助!

这是一个缩短的样本布局:

    A           B          C
1   Date        Series_A   Series_B
2   03/01/2011  45         20
3   04/01/2011  73         30
4   06/01/2011  95         40
5   08/01/2011  72         50
6   06/02/2011  5          13
7   09/02/2011  12         #N/A
8   05/02/2011  23         65
9   07/03/2011  12         65

然后我想要年份和月份和系列名称的三个输入单元格(索引/匹配,因为有更多列数据)。如果它是2011年,2月和Series_A,我希望它计算该月的平均值。在这种情况下,它将是(5 + 12 + 23)/ 3。如果它将是2011年2月和Series_B,它有一个错误,它应该显示(13 + 65)/ 2而不是错误。

除此之外,我想要一个单独的,它将输出一个带有数据的数组,而不是在它们之间没有'hole',而是使用正确的'length'。 C列中2011年2月的例子:

    A           B          C                  D
1   Date        Series_A   Desired Output     Output based on f above
2   03/01/2011  45         5                  
3   04/01/2011  73         12
4   06/01/2011  95         23
5   08/01/2011  72         
6   06/02/2011  5                             5
7   09/02/2011  12                            12
8   05/02/2011  23                            23
9   07/03/2011  12  

如果我然后运行= ISBLANK(C5)它应该是真的,而不是=“”= C5

希望编辑澄清

1 个答案:

答案 0 :(得分:0)

我伸出各种各样的平台来得到答案,在这里你有一个没问题。仍然没有完全回答第1部分,但仍然有效。

http://www.excelforum.com/excel-formulas-and-functions/905356-exclude-blank-false-cells-in-in-excel-array-if-formula-output.html