Excel表格里行和列的数据进行交换(转置)

<script language=jscript> function toggleDisplay(me){ if (me.style.display=="inline"){ me.style.display="none"; } else { me.style.display ="inline"; } } </script>

今天上班的时候,同事小Z在座位上发问,她想把Excel表格里行和列数据的位置交换一下,谁能帮她一下。我就正好用她的例子把这个技巧讲一下(这个操作有个专有名词叫转置,Transpose)。

数据示例——

上海出发到各城市的机票价格

北京   济南   青岛   沈阳
1050    900   1200   1350

她想要的结果:

北京  1050
济南   900
青岛  1200
沈阳  1350

先讲用菜单命令的方法:

1. 选择并复制要进行行列交换的单元格范围。
2. 右键单击第一个目标单元格(也就是要粘贴的数据的最左上角的单元格),选择 Paste Special。(也可以从菜单选择 Edit—>Paste Special,)
3. 在 Paste Special 对话框里,选择 Transpose 并点击OK
Transpose 选项在对话框的右下角。

The Paste Special dialog box

还有一种方法是用Transpose函数。不过还是上面讲的“特殊粘贴”方法简单。

TRANSPOSE函数可以把垂直的单元格返回成水平的单元格,反之亦然,把水平的单元格返回成垂直的单元格。TRANSPOSE必须作为一个数组函数输入。

语法:TRANSPOSE(array)
array可以是一个数组,也可以是表单上的单元格范围。

我还是用上面的数据为例,因为要用到单元格范围的引用,我把例子重写一下,放在Excel表单里看。

 ABCD
1北京济南青岛沈阳
21050 9001200 1350

选择并复制A1到D2的单元格,选择转置后要放置的区域,比如B6到C9,关键是目标区域要和源区域一样大。源区域有4列,目标区域就要有4行,源区域有2行,目标区域就要有2列。选择了目标区域后,输入"=TRANSPOSE(A1:D2)",Excel会自动把函数显示在目标区域左上角的单元格里,按 CTRL+SHIFT+ENTER,大功告成。

数组函数在输入的时候有些技巧。比如没有选定范围,只选定了一个单元格输入函数,按CTRL+SHIFT+ENTER后,只显示左上角一个单元格的数据。为了显示全部数据,以输入函数的单元格为左上角顶点,选择跟源区域对应的区域,按F2,再按CTRL+SHIFT+ENTER,数据就全部显示了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值