无需IF语句:基于Feature Size自动计算填充日期的方案问询
无需IF语句实现表格日期自动计算方案
核心思路
通过值匹配函数建立Feature Size与对应天数的映射关系,直接提取天数后与起始日期相加,替代繁琐的嵌套IF语句。
规则映射回顾
| 天数/Feature Size | Low | Medium | High |
|---|---|---|---|
| A列附加天数 | 5 | 10 | 20 |
| B列附加天数 | 12 | 12 | 12 |
具体公式(以Excel/Google Sheets为例)
假设表格结构:
- Feature Start 列:B列(如B2为第一行起始日期)
- Feature Size 列:C列(如C2为第一行的Size选项)
- A列计算结果:D列
- B列计算结果:E列
计算A列(D2单元格)
用LOOKUP函数:=B2 + LOOKUP(C2, {"Low","Medium","High"}, {5,10,20})或用
INDEX+MATCH组合(兼容性更强):=B2 + INDEX({5,10,20}, MATCH(C2, {"Low","Medium","High"}, 0))计算B列(E2单元格)
由于B列附加天数固定为12,可直接基于A列结果计算:=D2 + 12也可合并为单个公式:
=B2 + LOOKUP(C2, {"Low","Medium","High"}, {5,10,20}) + 12
验证示例
以用户提供的案例修正规则冲突后(原示例中High对应A列加5应为笔误,按规则应为加20):
- 当Feature Start=11/01/2024,Feature Size=High时:
- A列:
11/01/2024 + 20 = 11/21/2024 - B列:
11/21/2024 + 12 = 12/03/2024
- A列:
- 当Feature Start=12/01/2024,Feature Size=Low时:
- A列:
12/01/2024 + 5 = 12/06/2024 - B列:
12/06/2024 + 12 = 12/18/2024(与用户示例一致)
- A列:
优势
相比嵌套IF语句,匹配函数写法更简洁,后续若新增Feature Size选项,仅需扩展映射数组即可,维护成本更低。
内容的提问来源于stack exchange,提问作者Avinash Rajagopal
相关产品推荐
相关产品推荐

