Excel技术求助:按列B重复列C项及按列A、B计算列C值的公式
解决你的两个Excel公式需求
我来帮你一步步搞定这两个Excel公式问题,分场景给你详细说明:
需求1:按列B的规则重复列C的项
假设你的数据从第2行开始(表头在第1行),列B是对应列C项需要重复的次数,我们可以分两种Excel版本来实现:
适用于Excel 365/2021(支持动态数组)
在空白列(比如D列)的D2单元格输入以下公式,它会自动生成所有重复结果:
=TEXTSPLIT(TEXTJOIN("|", TRUE, REPT(C2:C10&"|", B2:B10)), "|")
公式逻辑拆解:
REPT(C2:C10&"|", B2:B10):给每个C列内容加上分隔符|,再按B列指定的次数重复TEXTJOIN("|", TRUE, ...):把所有重复后的内容合并成一个完整字符串TEXTSPLIT(..., "|"):将合并后的字符串按|拆分,自动生成一列重复的C项
适用于旧版Excel(无动态数组功能)
在D2单元格输入以下公式,然后下拉填充到足够多的行,直到所有重复项都生成:
=INDEX($C$2:$C$10, MATCH(TRUE, SCAN(0, $B$2:$B$10, LAMBDA(a,b,a+b))>=ROW(A1), 0))
下拉后公式会自动根据B列的重复次数,依次输出对应C列的内容。
需求2:根据列A和列B的值对列C的值进行乘法运算
这个需求的核心是让列C的值与A、B的运算结果相乘,最常见的场景直接套用乘法公式即可:
在空白列(比如E列)的E2单元格输入:
=A2*B2*C2
然后下拉填充就能得到每行的计算结果。
如果你的业务逻辑是其他运算组合(比如C乘以A与B的和/差),只需要调整公式里的运算符号:
- 列C ×(列A + 列B):
=C2*(A2+B2) - 列C ×(列A - 列B):
=C2*(A2-B2)
根据你的实际需求修改运算部分就可以啦。
内容的提问来源于stack exchange,提问作者Devtype
相关产品推荐
相关产品推荐

