急求助 请excel高手 帮忙

2025-06-21 21:32:19
推荐回答(2个)
回答1:

数据在A列和B列

在C1输入公式
=INDEX(A:A,SMALL(IF(MATCH($A$1:$A$2000&"",$A$1:$A$2000&"",0)=ROW($A$1:$A$2000),ROW($A$1:$A$2000),4^8),ROW(A1)))

数组公式,按CTRL+SHIFT+回车三键确定输入,鼠标移到单元格右下角,当出现一个黑色小十字时,同时按住鼠标左键往下拖动

然后在D1输入公式
=INDEX($B:$B,SMALL(IF($A$1:$A$2000=$C1,ROW($A$1:$A$2000),4^8),COLUMN(A1)))
数组公式,按CTRL+SHIFT+回车三键确定输入,鼠标移到单元格右下角,当出现一个黑色小十字时,同时按住鼠标左键往右拖动,再往下拖动

就会得出你想要的效果
我只把范围做到2000行,你可以根据自己数据改一下范围
不过这些数组公式很考验机能的,几千行数据,够呛,如果你的机子配置不高,会很卡的,楼主自己保重

回答2:

用EXCEL自带的宏编制一个小程序,很简单的。