如何在 Excel 中合并两个 IF 语句?
第一个 IF 是从一个单元格()检查开始日期(MMDDYY 格式)Staff!$G5
,如果该日期大于或等于我的活动工作表()上单元格中的日期(MMDDYY 格式)S1
,我希望它执行一个公式(Staff!$D5*SetupTab!$B$3))*S$2)
。
因此,这个公式可以帮我实现这个功能:
=IF(S$1>=Staff!$G5,Staff!$D5*SetupTab!$B$3))*S$2
需要注意的是,如果结束日期(单元格Staff!$H5
)超过了同一个 S1 单元格中的日期,那么单元格值将为零,而不是执行公式。
因此,它需要沿着这条线做一些事情,但这似乎没有正确检查这两个 IF 值:
=IF(S$1>=Staff!$G5, IF(S$1>=Staff!$H5 Staff!$D5*SetupTab!$B$3))*S$2
关于我想要完成的任务,我先简单介绍一下背景/说明...这是一份财务类型的报告,用于计算员工每月的开支。主要公式会帮我计算开支,但如果员工离职,我就不再需要预测他们离职日期之后的开支,这就是我希望将其“归零”的原因。同样,如果我有一名新员工将在两个月后开始工作,但我想现在就让他们入职并开始预测他们的开支,那么我不希望在他们实际入职日期之前开始计算他们的开支。
更新:该公式的基本思想是确定我是否需要预测某个员工在某个月份的费用。有两个完全独立的变量,因此这不是变量 1 和变量 2 的问题……这两个 IF 语句彼此独立。
1) 如果他们是某个月的在职员工……并且他们在单元格“staff!G5”中的开始日期早于或等于当前月份(单元格 S1),并且没有结束日期(单元格 staff!H5),那么我希望预测美元。
2) 如果他们尚未开始工作(例如,单元格“staff!H5”中的开始日期是一个月或两个月后),那么在他们开始工作的月份之前,预测收入将为零美元。
3) 如果单元格“staff!H5”中有一个结束日期,那么结束日期之后所有月份的预测都应该为零
我真的希望这对某些人来说有一定的意义:)我附加了一个屏幕截图汇编,希望有助于解释。
答案1
您的公式表示付款日期应晚于结束日期,您应该像下面这样反转符号:
=IF(And(S$1>=Staff!$G5,or(S$1 <= Staff!H5,isblank(Staff!H5))),Staff!$D5 * Setup!$B$3 * S$2,0)
现在,此公式考虑了空的结束日期(这就是全为 0 的原因)
答案2
用于AND()
检查两个条件:
=IF(AND(S$1>=OtherTab!$G6, S$1>=OtherTab!$H6), OtherTab!$D6*SetupTab!$B$3, 0)
IE
=IF(AND(condition1, condition2), value_if_both_true, else_value)
答案3
1) 如果他们是某个月的在职员工……并且他们在单元格“staff!G5”中的开始日期早于或等于当前月份(单元格 S1),并且没有结束日期(单元格 staff!H5),那么我希望预测美元。
AND(s$1 <= Staff!G5, Staff!H5 = 0)
2) 如果他们尚未开始工作(例如,单元格“staff!H5”中的开始日期是一个月或两个月后),那么在他们开始工作的月份之前,预测收入将为零美元。
(s$1 > Staff!G5)
3) 如果单元格“staff!H5”中有一个结束日期,那么结束日期之后所有月份的预测都应该为零
(s$1 > Staff!H5)
所以你的逻辑应该是“如果(case2或case3)那么0否则如果case1那么计算否则0
=IF(
OR((s$1 > Staff!G5),(s$1 > Staff!H5))
,0,
(
IF(
AND(s$1 <= Staff!G5, Staff!H5 = 0)
,
(Staff!$D5 * Setup!$B$3 * S$2)
,0
))
)
(未经测试,为了便于阅读我将其分解了一下)