发布信息

颠倒Excel单元格区域中的数据

作者:admin      2024-12-31 19:00:01     0



使用公式将单元格区域中的数据颠倒过来。例如,下图所示工作表中的单元格区域Data(即A1:A7),使用公式将原来处于区域Data中第一个单元格A1中的数据放置到最后一个单元格,本例中为单元格C7,将区域Data中第二个单元格A2中的数据放置到倒数第二个单元格C6,……,依此类推,直至将区域Data中最后一个单元格A7中的数据放置到第一个单元格C1。

公式思路

先获取单元格区域中最后一行的行号,提取该行号所在的数据放置在第一个单元格,然后获取区域中倒数第二行的行号,提取该行号所在的数据放置在第二个单元格,直至将区域中第一行所在单元格的数据放置到最后一个单元格。

公式解析

使用单个公式

在单元格C1输入公式:

=INDEX(Data,ROWS(Data)-ROW(A1)+1,1)

然后,下拉至单元格C7。最后的结果如下图所示:

公式的关键是:ROWS(Data)-ROW(A1)+1,其中ROWS(Data)返回单元格区域的行数,本例中为7。ROW(A1)返回单元格所在行的行号,在单元格C1中返回1,那么7-1+1的结果为7;C2中返回2,那么7-2+1的结果为6;……;C7中返回7,那么7-7+1的结果为1;因此ROWS(Data)-ROW(A1)+1的结果在C1至C7中依次为7、6、5、4、3、2、1,分别作为INDEX函数的行参数,在区域Data中获取相应的值。

使用数组公式

选择单元格区域C1:C7,输入数组公式:

=INDEX(Data,ROWS(Data)-ROW(INDIRECT(“1:” &ROWS(Data)))+1,1)

结果如下图所示:

其中,ROW(INDIRECT(“1:” & ROWS(Data)))生成数组{1;2;3;4;5;6;7},与ROWS(Data)即7并且加1进行运算后,生成数组{7;6;5;4;3;2;1},将该数组作为INDEX函数的行参数,依次从区域Data中取出值,放置在相应的单元格中。

如果区域中有空单元格,那么颠倒的相应单元格会显示0。使用下面的数组公式,将空单元格仍显示为空单元格:

=IF(INDEX(Data,ROWS(Data)-ROW(INDIRECT(“1:” &ROWS(Data)))+1,1)=”,”,INDEX(Data,ROWS(Data)-ROW(INDIRECT(“1:”& ROWS(Data)))+1,1))

即使用IF函数判断获取的值是否为空,如果为空则显示空,否则显示数据。

小结

要想获取某区域中的值,首先要考虑如何得到该值在该区域的行列号。这样,就可以使用INDEX函数来获取相应的值。

ROW函数相当于编程语言中的变量,根据单元格所在行的不同而得到不同的数值。

ROW函数配合INDIRECT函数使用,不用硬编码,更灵活。











图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部