在连锁零售业有一项常规工作-制定未来业绩目标。比如下表模拟2023年目标设置,每个店铺拆分为12个月,分别设置业绩目标值。
现实的情况是,不是所有店铺都能够在2023年完整经营12个月。有的店铺预计2023年7月份开业,有的店铺计划在2023年5月闭店。如何考虑开关店日期,批量将所有店铺拆分为指定行数?
比如上街店预计5月闭店,只有五行:
长安南路店7月份才开业,拆分自动从7月开始:
全自动实现以上过程只需要Power Query中的一个公式。将Excel表格中的店铺清单上传到Power Query中(Excel 2013安装Power Query插件,16及以上版本在数据选项卡下),添加自定义列:
自定义列输入以下公式:
代码语言:javascript复制{
if Date.Year([开店日期])=2023 then Date.Month([开店日期]) else 1
..
if Date.Year([闭店日期])=2023 then Date.Month([闭店日期]) else 12
}
该公式的含义为,生成一个数字序列,首先判断序列的起点,如果开店日期为2023年,则起点为开店的月份,否则起点为1月;接着判断序列的终点,如果闭店日期为2023年,则终点为闭店月份,否则终点为12月。也就是说,如果开店日期早于2023年,且预计不会在2023年闭店,则序列为{1..12}
展开后,即可得到需要的结果: