今天上班的时候,同事小Z在座位上发问,她想把Excel表格里行和列数据的位置交换一下,谁能帮她一下。我就正好用她的例子把这个技巧讲一下(这个操作有个专有名词叫转置,Transpose)。
数据示例——
上海出发到各城市的机票价格
北京 济南 青岛 沈阳
1050 900 1200 1350
她想要的结果:
北京 1050
济南 900
青岛 1200
沈阳 1350
先讲用菜单命令的方法:
1. 选择并复制要进行行列交换的单元格范围。
2. 右键单击第一个目标单元格(也就是要粘贴的数据的最左上角的单元格),选择 Paste Special。(也可以从菜单选择 Edit—>Paste Special,)
3. 在 Paste Special 对话框里,选择 Transpose 并点击OK。
Transpose 选项在对话框的右下角。
TRANSPOSE函数可以把垂直的单元格返回成水平的单元格,反之亦然,把水平的单元格返回成垂直的单元格。TRANSPOSE必须作为一个输入。
语法:TRANSPOSE(array)
array可以是一个数组,也可以是表单上的单元格范围。
我还是用上面的数据为例,因为要用到单元格范围的引用,我把例子重写一下,放在Excel表单里看。
A | B | C | D | |
1 | 北京 | 济南 | 青岛 | 沈阳 |
2 | 1050 | 900 | 1200 | 1350 |
选择并复制A1到D2的单元格,选择转置后要放置的区域,比如B6到C9,关键是目标区域要和源区域一样大。源区域有4列,目标区域就要有4行,源区域有2行,目标区域就要有2列。选择了目标区域后,输入"=TRANSPOSE(A1:D2)",Excel会自动把函数显示在目标区域左上角的单元格里,按 CTRL+SHIFT+ENTER,大功告成。
数组函数在输入的时候有些技巧。比如没有选定范围,只选定了一个单元格输入函数,按CTRL+SHIFT+ENTER后,只显示左上角一个单元格的数据。为了显示全部数据,以输入函数的单元格为左上角顶点,选择跟源区域对应的区域,按F2,再按CTRL+SHIFT+ENTER,数据就全部显示了。
联系客服