【发布时间】:2018-07-27 09:11:15
【问题描述】:
我曾尝试使用 textjoin 函数来执行此操作,但无法完全弄清楚。我有以下动态范围:
Product Problem Type
A Type1
A Type2
A Type1
A Type1
B Type2
B Type2
B Type3
C Type3
C Type1
C Type2
D Type3
D Type3
E Type1
我可以很容易地在单独的列中按 sum 进行分组(很像 SQL),按 Product 类型对 Type1 和 Type2 求和(不想对 Type3 求和)。我的目标是创建 一个 看起来像这样的单元格(不确定是否可以使用常规的 excel 公式)
“A-4、B-2、C2、E-1”。本质上,它会在一个单元格中找到唯一的产品类型并按产品对 Type1 和 Type2 求和。有可能吗?
这个公式会将不同的产品值返回到一个单元格中,每个字母旁边都有数字 4,因为 A 有 4 个 type1/type2.. 注意:如果我创建一个“总计”列并将 groupby 公式放在那里,我可以通过在公式末尾使用 B2:B14&D2:D14 而不是 sum(countif) 部分来使其工作。
{=TEXTJOIN(", ", TRUE, IF(MATCH(B2:B14, B2:B14, 0)=MATCH(ROW(B2:B14), ROW(B2:B14)), B2:B14&SUM(COUNTIFS(B:B,B2,C:C,{"Type1","Type2"})), ""))}
【问题讨论】:
-
听起来你实际上是想计算,而不是总和。
-
我认为这很容易通过一个“帮助”列来辅助唯一性和计数后缀,但如果没有后缀会非常复杂。
标签: vba excel excel-formula