Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel AND/OR语句的多个值_Excel_Excel Formula_Excel 2010 - Fatal编程技术网

Excel AND/OR语句的多个值

Excel AND/OR语句的多个值,excel,excel-formula,excel-2010,Excel,Excel Formula,Excel 2010,是否可以结合使用和(或或)语句条件以避免重复单元格名称 例如,我想看看单元格C2是否包含数字2、3、5、7或10中的任何一个。我想避免写作 IF(AND(C2=2,C2=3... etc. 并将其简化为一组数字,如 IF(AND(C2=[2,3,5,7,10]... 不幸的是,我要添加的不仅仅是5个数字,所以这变得非常费劲。任何人都有比反复使用单元格名更简单的方法吗?您可以使用这样的“数组常量” =如果(或(C2={2,3,5,7,10}),“是”、“否”) ..…或者对于一大组数字,您

是否可以结合使用
(或
)语句条件以避免重复单元格名称

例如,我想看看单元格C2是否包含数字2、3、5、7或10中的任何一个。我想避免写作

IF(AND(C2=2,C2=3... etc. 
并将其简化为一组数字,如

IF(AND(C2=[2,3,5,7,10]... 
不幸的是,我要添加的不仅仅是5个数字,所以这变得非常费劲。任何人都有比反复使用单元格名更简单的方法吗?

您可以使用这样的“数组常量”

=如果(或(C2={2,3,5,7,10}),“是”、“否”)

..…或者对于一大组数字,您可以将所有数字放在一个单元格范围内,例如
Z2:Z100
,并执行相同的操作

=IF(或(C2=$Z$2:$Z$100),“是”、“否”)

虽然使用范围而不是数组常量时,公式会变成“数组公式”,因此需要使用CTRL+SHIFT+ENTER进行确认

也许最好使用
COUNTIF
并避免“数组输入”

=IF(COUNTIF($Z$2:$Z$100,C2)>0,“是”、“否”)
=IF(iError(MATCH(C2,{2,3,5,7,11},0)),“否”、“是”)

无需将其作为数组公式输入。工作原理:
MATCH
返回一个
#N/a错误<代码>iError
捕捉到这一点

但是作为一个例子,你可能想把你的数字放在某个范围内,例如Z1:Z5,而不是硬编码到你的公式中。所以你可以用这个公式来代替:


=IF(iError(MATCH(C2,Z1:Z5,0)),“no”,“yes”)

匹配是一种很好的方法-我通常使用
ISNUMBER
然后您可以先显示正值!这提醒了我-如果你能使用
ISNUMBER(MATCH
你也可以使用
COUNTIF
SUMPRODUCT
更好…@barryhoudini:是的,但那需要我再键入一个字符。如果它是字符计数王,请尝试
ISNA
!@Jean-FrançoisCorbett谢谢你的编辑,还有关于ISNUMBER的建议。帮了大忙。这帮了大忙,谢谢。我有一个大约100个字母数字代码。某些行需要符合某些代码的标准,因此在这里使用数组常量对我有很大好处。