有没有办法在 A1 单元格中使用下拉列表来规定在 A2 单元格中使用哪个公式
Is there a way to use a drop down in A1 cell to stipulate which formula to use in A2 Cell
假设这是完成我想做的事情的最佳方式...
这些是我希望能够在它们之间切换的 2 个论坛:
=150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5
=80-(EDATE(F2, 37)>TODAY())*20-(EDATE(F2, 120)>TODAY())*20
为了更好地了解我正在尝试做什么,请查看屏幕截图:
是使用数据验证制作的下拉菜单(全职、兼职)。
根据我的选择,我希望单元格 C1 反映正确的论坛...
顺便看一下 CellA1 的公式,根据服务年限,单元格
中将显示有多少休假天数
如果用户无法在 B2 中输入任何其他内容,您可以使用以下公式:
=IF(B2="Full Time", *FullTimeFormula*, *PartTimeFormula*)
如果用户可能输入自己的数据,则可能要使用以下公式:
=IF(B2="Full Time", *FullTimeFormula*, IF(B2="Part Time",*PartTimeFormula*,"[Error message here]"))
除了兼职版returns全职价值的8/15之外,这两个公式不是在做同样的事情吗?在这种情况下,您可以只使用一个公式,然后在 G2 = "part Time" 的情况下乘以 8/15,例如
=IF(G2="part time",8/15,1)*(150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5)
但就我个人而言,我会按照我在您最初的问题 中建议的那样使用 DATEDIF
- 这样更容易调整:
然后看起来像这样:
=(MATCH(DATEDIF(F2,TODAY(),"y"),{0,3,10})+1)*IF(G2="part time",20,37.5)
尽管我注意到您将 EDATE
中的 36(代表 3 年)更改为 Jeeped 建议公式中的 37 - 这是故意的吗?
最终答案:
=If(B2="Full Time",150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5,If(B2="Part Time",80-(EDATE(F2, 37)>TODAY())*20-(EDATE(F2, 120)>TODAY())*20,0),0)
假设这是完成我想做的事情的最佳方式... 这些是我希望能够在它们之间切换的 2 个论坛:
=150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5
=80-(EDATE(F2, 37)>TODAY())*20-(EDATE(F2, 120)>TODAY())*20
为了更好地了解我正在尝试做什么,请查看屏幕截图:
是使用数据验证制作的下拉菜单(全职、兼职)。 根据我的选择,我希望单元格 C1 反映正确的论坛... 顺便看一下 CellA1 的公式,根据服务年限,单元格
中将显示有多少休假天数如果用户无法在 B2 中输入任何其他内容,您可以使用以下公式:
=IF(B2="Full Time", *FullTimeFormula*, *PartTimeFormula*)
如果用户可能输入自己的数据,则可能要使用以下公式:
=IF(B2="Full Time", *FullTimeFormula*, IF(B2="Part Time",*PartTimeFormula*,"[Error message here]"))
除了兼职版returns全职价值的8/15之外,这两个公式不是在做同样的事情吗?在这种情况下,您可以只使用一个公式,然后在 G2 = "part Time" 的情况下乘以 8/15,例如
=IF(G2="part time",8/15,1)*(150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5)
但就我个人而言,我会按照我在您最初的问题 DATEDIF
- 这样更容易调整:
然后看起来像这样:
=(MATCH(DATEDIF(F2,TODAY(),"y"),{0,3,10})+1)*IF(G2="part time",20,37.5)
尽管我注意到您将 EDATE
中的 36(代表 3 年)更改为 Jeeped 建议公式中的 37 - 这是故意的吗?
最终答案:
=If(B2="Full Time",150-(EDATE(F2, 37)>TODAY())*37.5-(EDATE(F2, 120)>TODAY())*37.5,If(B2="Part Time",80-(EDATE(F2, 37)>TODAY())*20-(EDATE(F2, 120)>TODAY())*20,0),0)