我在Excel中有3列跟踪有人按日期接听电话的情况。每个人最多被召唤3次,因此3列。我试图统计7月份回答的人数,所以前两列可能是7月之前,或者第一列可能是7月份。我的数据看起来有点像这样。
A B C D
1 1st Call 2nd Call 3rd Call July
2 01/06/15 12/06/15 22/06/15 No
3 01/06/15 15/06/15 02/07/15 Yes
4 14/06/15 02/07/15 Yes
5 14/06/15 03/07/15 Yes
6 05/07/15 Yes
因此无论他们是在1次,2次还是3次尝试后回答,如果3列中的任何一列是在7月,它将返回"是"。
我试过这个公式,
=IF(A2="", "", IF(COUNTIF(A2:C2, month=7)>0, "Yes", "No"))
和
=IF(A2="", "", IF(COUNTIF(A2:C2, MONTH(A2:C2)=7)>0, "Yes", "No"))
但无济于事。有谁知道如何实现这个目标?
修改
我已经意识到,因为我可以使用以下内容,
=IF(A2="","", IF(MONTH(A2)=7, "Yes", IF(MONTH(B2)=7, "Yes", IF(MONTH(C2)=7, "Yes", "No"))))
但是,如果我的第一次尝试是可以实现的,我仍然很好奇。
答案 0 :(得分:1)
为什么不使用Or语句? =if(or(month(a2)=7,month(b2)=7,month(c2)=7),"Yes","No")
。然后,您可以使用countif来计算您有多少“是”答案。
至于你的第一种方法是否有效,AFAIK不会因为公式中的数组不起作用。另外,使用if countif > 0, then ...
有点“过分”,因为你想知道的是,如果它们中的任何一个是七月,你可以使用上面的Or()
语句。
答案 1 :(得分:1)
是的,你可以通过一个简单的调整来做你正在尝试的事情,告诉你如何宣布你的“阵列”可能的回应:
=OR(IF(A2="", "", IF(Month(A2:C2))=7, TRUE, FALSE)))
您需要使用CTRL + SHIFT + ENTER确认此项,而不仅仅是ENTER。通过使用公式If(Month(CELL)> 0,TRUE,FALSE)遍历每个单元格,它将直接工作。然后根据结果给出一系列响应。 [类似{TRUE,FALSE,TRUE}]。
请注意,我需要将“yes”和“no”更改为TRUE / FALSE,因为这样我们就可以将整个事物包装在OR语句中。否则,很难从你的“是”和“否”的数组中挑选出来是否是“是”。如果需要,您可以将整个事物包装在IF公式中,将TRUE转换为“是”,如下所示:
=IF(FORMULA ABOVE,"yes","no")