中的
当前在Excel中具有以下公式:
=IF(AND(D3=Range(J:J);E3=Range(E:E));"Yes";"No")
但是,这没有给出正确的答案。问是:
如果D3在J和E3列在E列中的同一行中,则是,如果不是,则否。
任何帮助将不胜感激。
一个简单的countifs函数是这种情况的理想选择:
=IF(COUNTIFS(J:J;D3;E:E;E3);"Yes";"No")
我相信使用VBA完成此操作可能会更容易(假设您的表格中有标题):
Sub foo()
Dim ws As Worksheet: Set ws = Sheets("Sheet1") 'set this to your sheet name
Lastrow = ws.Cells(ws.Rows.Count, "J").End(xlUp).Row 'check last row on column J
For i = 2 To Lastrow 'loop til last row
If ws.Cells(i, "J").Value2 = ws.Range("D3").Value2 Then 'if D3 is in column J then
If ws.Cells(i, "E").Value2 = ws.Range("E3").Value2 Then 'if E3 is in column E (same row as J was found) then
ws.Cells(i, "H").Value2 = "Yes" 'add yes to column H, change this to where you want the answer yes/no
Else
ws.Cells(i, "H").Value2 = "No"
End If
Else
ws.Cells(i, "H").Value2 = "No"
End If
Next i
End Sub
这个公式怎么样:
=IF(AND(COUNTIF(J:J,D3)>0,MATCH(D3,J:J)=MATCH(D3,E:E)),"Yes","No")
它检查D3
是否在J列中,如果是的,则可以查看j。J。
D3
的值是否与D3
的值相同。使用匹配功能。匹配功能返回匹配查找值的行。如果两者相等,则它们在同一行中。
=IF(MATCH(D3,J:J,)=MATCH(D3,E:E,),"YES","NO")