Excel 中如何逆序排列数据

想到这个问题,是因为工作中有张 Excel 表本来是时间从大到小排列的,现在要和其它表数据合并,需要把时间从小到大排列。这件事也具有一定的普遍性,就是把原先的数据逆序放置,我把我的方法总结一下。

本来指望 Excel 有个类似“Paste in Reverse Order”的命令,但是没有找到,只有转置粘贴(Transpose),不能实现我的要求。我还是选择用公式来解决这个问题。

请看示例数据:

 ABCDEF
1时间问题提交数问题解决数时间问题提交数问题解决数
22008-6-881122008-6-1317
32008-6-756172008-6-2334298
42008-6-63253152008-6-3303280
52008-6-52191872008-6-4215190
62008-6-42151902008-6-5219 187
72008-6-33032802008-6-6325315
82008-6-23342982008-6-75617
92008-6-13172008-6-88112
10      

A2:C9 是原始数据,D2:F9 是期望的结果。

我先讲一下在 D 栏中如何逆序放置 A 栏的数据,再讲整个 A2:C9 如何逆序放置在 D2:F9 中。

在 D2 输入公式 =OFFSET($A$2,ROWS(A2:$A$9)-1,0), 然后双击填充柄,自动应用到 D3:D9 的区域,可以看到 D3 中的公式是 =OFFSET($A$2,ROWS(A3:$A$9)-1,0); D9 中的公式是 =OFFSET($A$2,ROWS(A9:$A$9)-1,0)。

D 栏里要逆序放置 A 栏的数据,A9 放在 D2,A8放在 D3,如此类推,A2 放在 D9。我设计的公式,以 A2 为参考点,为了保证公式自动填充时这个基准点不会变化,用的是绝对引用 $A$2。 ROWS(A2:$A$9)-1 计算出要取值的单元格和参照点之间的距离(行数)。最后,用 Offset 函数返回要取值的单元格。

对于整个 A2:C9 区域的逆序放置, 我们不必把上面的公式在 E 栏和 F 栏分别输入一遍。Offset 函数本身就可以返回一个区域的。选择 D2:F2,在公示栏里输入 =OFFSET($A$2:$C$2,ROWS(A2:$A$9)-1,0), 按 Ctrl+Shift+Enter 输入,D2:F2 就全部填充了,然后双击填充柄,自动应用到 D2:F9 整个区域。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值