嵌套 IF 语句帮助

Nested IF statements assistance

我制作了一个小练习册,完全模仿了我 post 编辑的原始公式。该工作簿的目的是根据各种输入的组合(如下所列)计算每位员工的奖金。这是我的工作簿的布局方式:

  1. 数据选项卡
  2. 奖金标签
  3. 基本奖励选项卡
  4. 摘要选项卡

我用来输入不同组合的数据选项卡的图片: Data Tab

组合列表:

我将单元格 C1 用于 IF 语句,以根据上述组合指定要使用的公式。 (例如 B5 和 B6 中的数字 = 1)

=IF(AND($B<>"",$A<>"",$B<>""),5,IF(AND($B<>"",$B<>""),3,IF($B<>"",1,IF($B<>"",2))))

奖金标签图片:Bonus Tab

基本奖励标签图片:Base Bonus Tab

摘要选项卡的图片:Summary Tab

我已经分别为每个组合创建了公式,但是当我尝试将它们组合成一个时,我收到了太多参数错误消息,因为组合 3 和组合 5 在 IF 语句中使用了 false。我试图避免进行计算 table 并且更愿意在 B 列的员工摘要选项卡上使用一个公式。

我将进一步具体解释组合 3 - 如果基本奖金低于常规奖金,则乘以基本奖金 * 员工百分比 + 公司和供应商奖金 * 公司百分比。如果基本奖金高于常规奖金,则乘以常规奖金 * 员工百分比 + 公司和供应商奖金 * 公司百分比。

示例:

鲍比

基本奖金 $50 < 常规奖金 $100

50 美元 * 50% 员工百分比 = 25 美元 + 200 美元公司 + 0 美元供应商 * 50% 公司 = 100 美元

如果基本奖金 < 常规奖金,最终答案是 $125

我将进一步具体解释组合 5 - 如果基本奖金低于常规奖金,则乘以基本奖金 * 员工职务 Employee % + Company&Vendor bonus * job title Company %。如果基本奖金高于常规奖金,则乘以常规奖金 * 员工职位员工百分比 + 公司和供应商奖金 * 职位公司百分比。

示例:

鲍比

基本奖金 $50 < 常规奖金 $100

查找 Bobby 的职位以确定员工百分比和公司百分比

75% 的职员百分比和 50% 公司百分比

75% * 50 美元 + 50% *(200 美元公司和 0 美元供应商)= 137.5 美元

如果<常规奖金,最终答案是 137.5 美元的基本奖金

这里是每个公式的组合列表:

组合 1:

=IF(Data!$C=1,Data!$B*Bonus!D2+Data!$B*(Bonus!E2+Bonus!F2))

组合 2:

=IF(Data!$C=2,IF(SUM(Bonus!B2:C2)<1,0,1)*Data!$B+Data!B5))

组合 3:

=IF(Data!$C=3,IF(VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)<VLOOKUP(Summary!A2,Bonus!$A:$D,4,FALSE),VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)*Data!$B+Data!$B*(Bonus!E2+Bonus!F2),VLOOKUP(A2,Bonus!$A:$D,4,FALSE)*Data!$B+Data!$B*(Bonus!E2+Bonus!F2)))

组合 5:

IF(Data!$C=5,IF(VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)<VLOOKUP(Summary!A2,Bonus!$A:$D,4,FALSE),VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,2,FALSE)+(Bonus!E2+Bonus!E2)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,3,FALSE),VLOOKUP(A2,Bonus!$A:$D,4,FALSE)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,2,FALSE)+(Bonus!E2+Bonus!E2)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,3,FALSE)))

希望这比我最初的 post 更清晰,并且可以轻松复制。如果您有任何问题,请告诉我,谢谢!

我在你的公式中发现了一些问题

  1. Combo3 在 else 选项中,您有 A2 遵循模式,它应该是 Summary!A2

  2. Combo5 总和在您拥有的同一个单元格中 (Bonus!E2+Bonus!E2) 它应该是 (Bonus!E2+Bonus!F2)

  3. 我没有记录最初的嵌套If来比较它为什么不起作用。我得到这个:

最终嵌套:

    =IF(Data!$C=1,Data!$B*Bonus!D2+Data!$B*(Bonus!E2+Bonus!F2),IF(Data!$C=2,IF(SUM(Bonus!B2:C2)<1,0,1)*Data!$B+Data!B5,IF(Data!$C=3,IF(VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)<VLOOKUP(Summary!A2,Bonus!$A:$D,4,FALSE),VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)*Data!$B+Data!$B*(Bonus!E2+Bonus!F2),VLOOKUP(Summary!A2,Bonus!$A:$D,4,FALSE)*Data!$B+Data!$B*(Bonus!E2+Bonus!F2)),IF(VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)<VLOOKUP(Summary!A2,Bonus!$A:$D,4,FALSE),VLOOKUP(Summary!A2,'Base Bonus'!$A:$B,2,FALSE)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,2,FALSE)+(Bonus!E2+Bonus!F2)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,3,FALSE),VLOOKUP(B2,Bonus!$A:$D,4,FALSE)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,2,FALSE)+(Bonus!E2+Bonus!F2)*VLOOKUP(VLOOKUP(Summary!A2,Data!$A:$B,2,FALSE),Data!$A:$C,3,FALSE)))))