If statement 如果符合多个条件

If statement 如果符合多个条件,if-statement,excel-formula,match,If Statement,Excel Formula,Match,表1 | | 1 Jan 2018 | 2 Jan 2018 | 3 Jan 2018 | 4 Jan 2018 | 5 Jan 2018 | |----|------------|------------|------------|------------|------------| | A1 | | | | | | | A2 | |

表1

|    | 1 Jan 2018 | 2 Jan 2018 | 3 Jan 2018 | 4 Jan 2018 | 5 Jan 2018 |
|----|------------|------------|------------|------------|------------|
| A1 |            |            |            |            |            |
| A2 |            |            |            |            |            |
| A3 |            |            |            |            |            |
| A4 |            |            |            |            |            |
| A5 |            |            |            |            |            |
| A6 |            |            |            |            |            |
表2

|----|----------|-----------|-----------|-----------|-----------|
| A1 | 3-Jan-18 | 10-Jan-18 | 17-Jan-18 | 24-Jan-18 | 31-Jan-18 |
| A2 | 3-Jan-18 | 10-Jan-18 | 17-Jan-18 | 24-Jan-18 | 31-Jan-18 |
| A3 | 3-Jan-18 | 10-Jan-18 | 17-Jan-18 | 24-Jan-18 | 31-Jan-18 |
| A4 | 3-Jan-18 | 6-Jan-18  | 10-Jan-18 | 13-Jan-18 | 17-Jan-18 |
| A5 | 3-Jan-18 | 10-Jan-18 | 17-Jan-18 | 24-Jan-18 | 31-Jan-18 |
| A6 | 3-Jan-18 | 10-Jan-18 | 17-Jan-18 | 24-Jan-18 | 31-Jan-18 |
如果匹配

=IF(MATCH(A2,$A$27:$A$54,0) & MATCH(C1,$B$27:$S$54,0),"1","")
  • 从中找出错误
  • 尝试将公式应用于表1中的单元格以查找表2中的值
  • 如果匹配,则输出为1,否则为0
上面的表格和图片清楚地说明和实验。 提前感谢(:

应用公式和输出

首先,
MATCH()
返回一个数字,表示找到的匹配的位置,因此公式显示
如果(1&1,“1”,“1”)
对于第一个潜在匹配,这里没有逻辑

第一种方法是强制输出真/假:
=IF(AND(ISNUMBER(MATCH())、ISNUMBER(MATCH())、“1”、“1”)

您仍然存在这样一个问题,即第二个匹配引用的是整个Results范围。不过,您确实希望此操作仅查看满足第一个条件的行,为此,我们将使用数组公式来构建您要使用的数组:

编辑:无法从Match生成数组,因为它返回单个整数:

=大型(如果(B$1=IF($A2=$A$27:$A$54,$B$27:$S$54),1,0),1)

这是一个数组公式,当仍在公式栏中时,按Ctrl+Shift+Enter键

内部
IF()
statemnet正在为每一行构建一个数组,在列A匹配的地方提供值,在列A不匹配的地方提供值。outter
IF()
语句随后将计算0或1是否在该新数组中找到日期


我把它封装在<代码>()中,以返回第一个最大数,因此如果找到一个匹配,它将返回1。如果你想要空白,你可以把整个东西包在另一个代码> If()中:/Cord>语句;<代码>如果([公式]=0,”“1”)。

感谢您的解释&我理解您的答案,我也按了Ctrl+Shift+Enter,但我与1月3日的比较结果与不匹配的日期一样空白……好吧,我会模拟您的数据并看一看,我是在我的头上写下的…@Tyler抱歉,这显然是一项仓促的工作,我没有直接思考,因为您无法使用Match来完成构建一个数组。我已经编辑了答案,现在显示了如何使用if语句来生成您想要的结果…我根据您的解释应用了它。{=if(大的)(if(D$1=if($A2=A$27:$A$54,$B$27:$S$54),1,),1)=0,“,”,1)}它有效,并且从现在起肯定为我节省了很多时间。非常感谢(: