在 Excel 电子表格中,假设如果范围的所有三个单元格都符合条件,则显示某个奖金(数值),而当三个单元格中只有两个符合条件时,则会显示“较小的奖金”值。
我在名为“奖金”的单独工作表上创建了奖金列表,并使用附加辅助列连接三个单元格的值,并尝试了以下公式:
=INDEX(奖金!E:E,MATCH(CONCATENATE(W3,X3,Y3),奖金!D:D,0))
当需要所有三个数字才能获得奖金时,该公式非常有效,但还有另一组“较小的奖金”,需要三个数字中的两个才能匹配。由于第三个单元格永远不为空,因此上述公式无法找到两位数值的连接值。有没有办法修改公式以包含小额奖金?也许我需要找到一种方法将第三个单元格引用为空单元格?有人能给出建议吗?
答案1
虽然很长,但似乎有效:
=IF(ISERROR(INDEX(Bonuses!E:E,MATCH(TRIM(W3)&TRIM(X3)&TRIM(Y3),Bonuses!D:D,0))),0,INDEX(Bonuses!E:E,MATCH(TRIM(W3)&TRIM(X3)&TRIM(Y3),Bonuses!D:D,0)))
它将检查是否有 3 个值的奖励。如果找到,它将返回该奖励。如果未找到,它将检查是否有 2 个值的奖励。如果仍未找到,它将返回零。2 个值的奖励可以是 W 和 Y 或 X 和 Y,因为您声明第 3 列将始终被填充。
此公式假设您的奖金表中有奖金工作表 D 列中列出的 2 个可能奖金值。它还假设这些值是文本。Trim(以及 Concatenate)返回文本值。