Excel反转单元格顺序

/ 1评 / 0

方法一:建立辅助列,使用排序功能反转

20201018212536

方法二:使用Index函数 + Rows函数

20201018212537

详解

方法一很容易理解,只是排序功能的灵活运用。

方法二的公式:

=INDEX( $A$1:$A$9, ROWS($A$1:$A$9) - ROWS($A$1:A1) + 1 )

用到的公式有两个,IndexRows

Index函数有两个参数:
1. 第一个参数为一个数组(即A1单元格到A9单元格)
2. 第二个参数为一个下标(即返回该数组的第几项),应是一个数字,取值范围:[0, 参数1的长度],输入0和1的效果是一样的,都是返回第一参数的第1个值。

Rows只有一个参数,接受一个数组(单元格区域),会返回这些单元格一共跨了多少行

ROWS($A$1:$A$9)会返回9,即总行数。

ROWS($A$1:A1)会返回一个变化的数值,因为后面的A1没有加$符号,是相对地址,在向下填充时会依次变为 A1、A2、A3、A4…… 相应的返回值也依次变为 1、2、3、4……

结合总行数 - 返回值 + 1这个公式就依次得到 9、8、7、6…… 的计算结果。

然后Index函数就拿到了这个计算结果,知道我们在B1单元格想要A1A9这个数组中的第9项,所以在B1单元格会返回A9的内容、在B2会返回A8、在B3会返回A7…… 依次下去,就达到了反转单元格顺序的目的。

总结

相信看到这里,你大概也知道什么时候需要用哪种方法了。

方法一优点是原理简单、不需要编写公式,缺点是需要添加辅助列、内容发生改变时需要重新操作一次。适合数据不易变化或使用次数低的场景。

方法二优点是当源数据发生改变时能立刻更新,不需要额外操作,缺点是需要编写公式。

假如只需要反转一次数据的话,建议使用第一种方法,第二种方法就当是知识储备,说不定哪天就要用上了。


- 正文完 -

Excel按F4键(绝对地址快捷键)偶尔会失效,原因是电脑同时登陆了QQ,QQ默认设置占用了F4这个快捷键,这时把QQ的快捷键修改一下即可。

  1. 一种新的方法,使用lambda封装数组函数进行数组的反转操作,见 《Excel 反转数组》

发表回复