excel中,如何将a列相同的值所对应的B列的值按行排列?

就是有两列数据,格式如下:
1 31
1 21
1 34
2 346
2 78
3 34
3 7967
4 235
4 45
4 324
4 34,然后,希望能改成
1 31 21 34
2 346 78
3 34 7967
4 235 45 324 34这种格式,也就是说,a列相同的值所对应的B列的值变成行来排列,a列中相同值的重复次数不一定,也就是转化后列的个数不一定。数据有很多,简单的转置会转死人的。。。请高手看有没有公式能实现。谢谢!
pwaters: 非常感谢你的回答~ 我的数据一共有4252行,其中a列不重复的有377行,我就将你公式中的11改成了4252,但是只能到26行出来数值,到27行以后出来的数值都是一摸一样的。。为什么呢?

第1个回答  2009-05-24
假设数据在A1:B11
在C1输入:
=IF(SUM(1/COUNTIF($A$1:$A$11,$A$1:$A$11))>=ROW(B1),INDEX($A$1:$A$11,SMALL(IF(ROW($A$1:$A$11)=MATCH($A$1:$A$11,$A$1:$A$11,0),ROW($A$1:$A$11),"0"),ROW(B1))),"")

同时按 Ctrl+Shift+Enter, 形成数组公式
下拉到c11

在D1输入:
=IF(C1="","",IF(COUNTIF($A$1:$A$11,$C1)<COLUMN(D1)-3,"",INDEX($B$1:$B$11,SMALL(IF($A$1:$A$11=$C1,ROW(D$1:D$11),300),COLUMN(A1)))&""))

同时按 Ctrl+Shift+Enter, 形成数组公式
下拉到d11
右拉到若干列.本回答被提问者采纳
第2个回答  2020-05-20
如图,在b1中输入
=vlookup($a1,$h:$k,column(b1),)
右拖、下拉填充。
第3个回答  2009-05-24
陪等
第4个回答  2009-05-24
关注一上
相似回答