当前位置: 代码迷 >> VBA >> 请问有没有简易方法处理这样的数据
  详细解决方案

请问有没有简易方法处理这样的数据

热度:10150   发布时间:2013-02-26 00:00:00.0
请教有没有简易方法处理这样的数据?
第一列是名字,但是有很多都是重复的;第二列是数据。
现在我想把它处理为第一行是名字(不重复),每个名字下面对应的是数据(可能不止一个),还是举个例子吧:

张三 4.355
张三 4.3365
张三 4.3235
李四 4.475
李四 4.532
李四 4.425
李四 4.456
李四 4.5495
李四 4.385
李四 4.5675
李四 4.472
李四 4.4365
李四 4.5175
王五 4.4555
王五 4.572
王五 4.4505
王五 4.498

我想用VBA语句把它变成如下形式:

张三 李四 王五
4.355 4.475 4.4555
4.3365 4.532 4.572
4.3235 4.425 4.4505
4.456 4.498
4.5495
4.385
4.5675
4.472
4.4365
4.5175
谢谢。。。

------解决方案--------------------------------------------------------
设A和B列是你的数据

D1里头输入
=INDIRECT("a" & SMALL((COUNTIF(INDIRECT("a$1:a" & ROW(1:17)),$A1:$A17)=1)*ROW(1:17),COLUMN()-3))

CTRL+SHIFT+ENTER数组公式 , 然后向后啦

D2里头输入
=IF(SUM(--($A1:$A$17=D$1))>0,(1/SMALL(1/(($A$1:$A$17=D$1)*$B$1:$B$17+1),ROW(1:17))-1),"")
CTRL+SHIFT+ENTER数组公式 , 然后向后再向下啦


不需要的数据自己删除
  相关解决方案