Excel:对 A 列中的每个 ID 计算 B 列中的所有值,并使用所有这些结果创建一个新列

问题描述 投票:0回答:1

所以我不知道我的表述是否正确。我有一个包含数千行的数据库。 A 列是标识特定产品的代码,B 列具有(0-否;1-是)值。对于 A 列中的每个特定产品,我需要 C 列中的每一行包含 B 列中所有值的总和。

在下面的示例中,有三种产品,C 列是输出的样子。 A 列中带有 X 的所有行将 B 列的值(仅来自所述行)和打印在 C 列中所有相同行上的结果相加。带有 X 的每一行(A 列)应该有一个 5(C 列),其中是 B 列中所有 1 的总和(仅适用于带有 X 的行)。

A 栏 B 栏 C 栏
X 1 5
0 2
1 2
Z 0 1
X 1 5
X 1 5
Z 1 1
X 1 5
Z 0 1
X 1 5
X 0 5
Z 0 1
1 2

请记住,有数千种产品具有不同且复杂的 ID(A 列)。我想过创建一个动态表,它在不同的工作表中为我提供结果(所述值的 B 总和),然后根据 A 列值合并两者,但我尝试使用以下代码一步完成此操作C 栏

excel excel-formula sumifs
1个回答
0
投票

执行此操作的方法很少,也许为了可读性可以使用以下公式:


=LET(α, A2:B14, δ, TAKE(α,,1), HSTACK(α,VLOOKUP(δ,GROUPBY(δ,TAKE(α,,-1),SUM,,0),2,0)))

或者,

=LET(α, A2:B14, δ, TAKE(α,,1), HSTACK(α,SUMIFS(TAKE(α,,-1),δ,δ)))

© www.soinside.com 2019 - 2024. All rights reserved.