我是Excel公式的新手,所以任何人都可以帮助我
我的元素如下
+----+---------+------------+
| A | B | C |
| nr | car | model |
| 1 | Ford | Mustang |
| 2 | Ford | Focus |
| 3 | Ford | Focus |
| 4 | Ferrari | 458 |
| 5 | Ferrari | Testarossa |
+----+---------+------------+
我怎么能得到如下结果
+---+---------+-----------------+
| 1 | Ford | Mustang, Focus |
| 2 | Ferrari | 458, Testarossa |
+---+---------+-----------------+
每个 Value 都是独一无二的 . 我尝试了Vlookup,但它只返回1个值为1的元素 . 示例:与福特的VLookup将仅返回第一个结果Mustang,但不返回Focus
如果可能的话,请仅使用公式:)我见过类似的问题,但没有答案
3 回答
现在,如果你不介意他们在不同的单元格中,那么:
这是一个数组公式,因此必须使用Ctrl-Shift-Enter而不是Enter或Tab确认以退出编辑模式 .
把它放在D2中
拖累
每辆车最后一次出现的车型都有你想要的数据 .
如果您可以杀死列A并使用Excel的删除欺骗功能,这将更容易 .
如果你想用代码来做,这将有效:
结果:
这可以在额外的步骤中完成 . 因为在你需要一个中间表 .
因此,在我的示例中,我获取您给出的数据(似乎是为Column car排序),但假设它没有排序(屏幕截图中的未排序数据) .
第1步:
对未排序的数据进行排序,并在第9-14行中形成表格 . 在D9中添加一列,在单元格D10中添加以下公式:
这个公式的作用是它同时查找和连接值 .
我在第9行和第14行的表中找不到唯一的条目,第16行的公式 . (这只是为了方便起见)
B16
=SUMPRODUCT(1/COUNTIF($B$10:$B$14,$B$10:$B$14))
第2步:
在第18-20行(没有任何独特的条目给出了这个表有多大的想法),
B19
=INDEX($B$10:$B$14,MATCH(0,INDEX(COUNTIF($B$18:B18,$B$10:$B$14),0,0),0))
此公式列出了colB中的唯一汽车名称 . 在colC中,你查找汽车名称的最后一个连接值(因为我们之前保持连接,汽车名称的最后一个条目会得到你的结果)
C19
=LOOKUP(2,1/($B$9:$B$14=B19),$D$9:$D$14)
这应该给你结果表! (已将所有这些作为值粘贴在colG以上,以便您看到输出)