首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VBA >

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

2012-03-13 
请教有没有简易方法处理这样的数据?第一列是名字,但是有很多都是重复的;第二列是数据。现在我想把它处理为

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

张三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.3554.4754.4555
4.33654.5324.572
4.32354.4254.4505
4.4564.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数组公式 , 然后向后再向下啦


不需要的数据自己删除

热点排行