在工作中,我们一般是用“列表”进行统计和分析,但有些时候,你做好了“列表”,领导又临时让你变成“行表”。
如图
1
所示。
(图
1
)
对于数量少的,当然可以复制→选择性粘贴→置换功能就可以解决,当数量达到一定程度,如果A列有1000个片区呢,这时候单单用复制和粘贴是很难解决问题的。
解决这个问题,我们得用INDEX函数,INDEX函数语法以前已经说过了,不在此进行进一步说明,不太懂的可以百度或者谷歌。
好,现在我们一起来解决如何将“列表”变成“行表”:
1、将A1:A10单元格区域复制到D1:D10单元格区域→选择【数据】选项卡中的“删除重复项”→得到不重复片区的名单。如图2所示。
(图
2
)
2、
在
E1
单元格输入如下数组公式(输入公式后需按
Ctrl+Shift+Enter
组合键):
=INDEX($B$1:$B$10,SMALL(IF($A$1:$A$10=$D1,ROW($A$1:$A$10),1000),COLUMN(A1)))
然后向右和向下填充如图3所示。
(图
3
)
【公式解析】
这个公示理解的关键点在IF和SMALL的组合函数:
SMALL(IF($A$1:$A$10=$D1,ROW($A$1:$A$10),1000)
1、通过IF函数分别划分出三个社区,比如说合江社区,如果在A1:A10中不是合江社区的就返回FALSE,即1000,如果是就返回TRUE,即ROW($A$1:$A$10),本身的序号;
2、用SMALL函数将通过IF函数得到的数列按照升序排列,分别选取第1、2、3个数(以合江社区为例),即所在单元格所在的行号;
3、用INDEX函数在B1:B10单元格区域进行选取。
如果不是很清楚,我们也可以用【公式求值】来进一步增加理解。如图4所示。
(图
4
)
4、再将错误值去掉就可以得到“行表”的效果。
(图
5
)
如果大家在工作中遇到类似的问题,欢迎在文末留言。也欢迎联系小编加入“办公技巧兴趣邦”一起来学习探讨。
后台回复
“动画教程
”,获取
《全套Excel原创动画教程》
后台回复“
简历模板
”,获取
《100份简历模板》
后台回复“
面
试题
”, 获取
《100份名企笔试、面试题》
后台回复“