Excel动态数组生成带% uplift的溢出数组遇问题求助
解决每行应用% Uplift的Excel动态数组问题
- 直接用
SCAN函数结合INDEX就能搞定,公式示例(假设初始总计在B1,费率列在A2:A5):=SCAN(B1, SEQUENCE(ROWS(A2:A5)), LAMBDA(累计值, 当前行号, 累计值 * (1 + INDEX(A2:A5, 当前行号))))
原理:SEQUENCE生成对应行数的序列作为行索引,在SCAN的迭代逻辑里用INDEX提取当前行的费率,这样每次迭代既能拿到上一步的累计结果,又能获取该行对应的uplift百分比,解决你之前用SCAN拿不到对应费率的问题。 MAP和BYROW之所以不行,是因为它们是并行迭代,每一行的计算都是独立的,没法访问前一行更新后的总计值,这种需要逐步累积更新的场景,只有SCAN这种串行迭代的函数能胜任。- 安卓手机上直接输入这个公式,按回车后会自动溢出生成所有行的结果,操作上无额外复杂步骤。
内容的提问来源于stack exchange,提问作者Zaphod Beeblebrox
相关产品推荐
相关产品推荐

