图1
A B C D E F G H I
1 emp_id Mgr SKL1 SKL2 SKL3 concatM1 Concatsk1 Concatsk2 Concatsk3
2 1 5 8 9 18 1_5 1_8 1_9 1_18
3 5 8 9 18 5_8 5_9 5_18 5_
4 8 9 18 8_9 8_18 8_ 8_
5 9 18 9_18 9_ 9_ 9_
6 18 18_ 18_ 18_ 18_这只是一个例子
在这里,empid 1将empid 5作为管理器,empid 8是他的跳跃级别管理器1,empid 9是他的跳跃级别2管理器,empid 18是他的跳跃级别3管理器。(串联仅用于公式等,将emp id与管理器id和跳跃级别管理器id连接在一起)
表2:预期输出(应为任何随机emp经理组合提供标志,无论经理员工关系是否存在以及存在哪种类型的关系)
A B C D E F
1 emp id manager id concat Mgr SKL1 SKL2 SKL3
2 5 9 5_9 No Manager No No
3 8 18 8_18 No No Manager No
4 9 5 9_5 No No No No在表2 D2单元格中编写的代码,用于确定经理是否为员工的直接经理
=IFERROR(IF(VLOOKUP($C2,'Sheet1'!F:I,1,0),"Manager","Not correct"),"No")在表2 E2单元格中编写的代码,用于确定经理是否为跳过1级经理
=IFERROR(IF(VLOOKUP($C2,'Sheet1'!F:I,2,0),"Manager","Not correct"),"No")Code对所有内容都返回No,所以我的代码有问题
发布于 2020-08-27 22:10:53
我认为使用COUNTIFS会更容易:
一张纸上的简化示例如下:
=IF(COUNTIFS($A:$A,$H3,E:E,$I3)>0,"Manager","No")

发布于 2020-08-27 22:16:34
下面是你的原始代码不能工作的原因,以及如何修复它。
问题
if语句上的第一个,应改为=。
解决方案
更改此设置:
=IFERROR(IF(VLOOKUP($C2,'Sheet1'!F:I,1,0),"Manager","Not correct"),"No")要这样做:
=IFERROR(IF(VLOOKUP($C2,'Sheet1'!F:I,1,0)="Manager","Not correct"),"No")此解决方案适用于您的第一个公式。您也可以更改第二个,以进行相同的更正。
也是
看起来你在公式中换了“不正确”和“否”:
https://stackoverflow.com/questions/63617699
复制相似问题