将所有数组值输出到单元格

时间:2015-10-17 13:46:02

标签: arrays excel excel-formula excel-2010

我在Excel中处理数组公式的输出时遇到了一些麻烦,例如:

 {=IF(B3:D3>=4;"Something";"")}  

我想用这个片段实现的目的是打印" Something"在目标单元格中​​,如果数组的一个值大于或等于4.如果我们假设我们的数组是{1,1,4},结果应该是{"","&# 34;," Something"},但Excel只会打印数组的第一个值,从而产生一个空白单元格。

有一种简单的方法可以使这项工作吗?

另外,我如何将数组与"静态"进行比较?阵列?类似的东西:

Pseudocode
{=IF(B3:D3={1,1,1};"Every value is 1";"")}  

目的是确定B3:D3中的每个值是否为1,然后将某些内容打印到目标单元格。

是否可以直接在公式中输入像{1,1,1}这样的数组/列表?

我用Google搜索无济于事,只能找到"条件"数组是在工作表的某个数组中定义的,或者只是用AND语句链接值检查。

2 个答案:

答案 0 :(得分:0)

试试这个公式:

=IF(COUNTIF($B$3:$D$3,1)=COLUMNS($B$3:$D$3),"Every value is 1","")

答案 1 :(得分:0)

对于细胞范围,第一部分可以像这样完成:

=IF(MAX(B3:D3)>=4, "Something", "")

或静态数组:

=IF(MAX({1,2,3,4})>=4, "Something", "")

检查匹配数组的第二部分必须在输入公式时按Ctrl_Shift_Enter来完成:

IF(MIN((B3:D3={8,5,8})+0)>0, "Matches!!", "NOT matching")