首页 Excel教程内容详情

将Excel矩形数据区域转换成一行或者一列

2025-06-26 8 office教程网
将Excel矩形数据区域转换成一行或者一列

站点名称:将Excel矩形数据区域转换成一行或者一列

所属分类:Excel教程

相关标签: # excel公式 # excel技巧 # excel教程 # Excel表格 # Excel教程

官方网址:

SEO查询: 爱站网 站长工具

进入网站

站点介绍

将工作表中矩形数据区域转换成一行或者一列。例如将下图所示的名为Data的区域:

转换成单独的一列:

或者单独的一行:

先不要看下面的答案,自已可以先想一想如何实现?

公式思路

获取数据所在的行号和列号,然后提取行列号所在单元格中的数据。

公式解析

按行顺序将区域中的数据转换成单独的一列

在单元格B2中输入公式:

=IF(INDIRECT(ADDRESS(ROW(Data)+INT((ROW()-ROW($B$2))/COLUMNS(Data)),COLUMN(Data)+MOD(ROW()-ROW($B$2),COLUMNS(Data)),4,,”Sheet1″))=””,””,INDIRECT(ADDRESS(ROW(Data)+INT((ROW()-ROW($B$2))/COLUMNS(Data)),COLUMN(Data)+MOD(ROW()-ROW($B$2),COLUMNS(Data)),4,,”Sheet1″)))

然后下拉至单元格B17,如下图所示。

其中,ROW(Data)+INT((ROW()-ROW($B$2))/COLUMNS(Data))获取Data区域中第1行第1列的数据所在的行。数学原理:用需要输入数据的区域中当前单元格所在行的行号减去首行行号的结果,除以被提取单元格区域Data的列数,所得结果加上Data区域起始行号,即为要在当前单元格中放置的数据在Data区域中的行号。

Excel求连续数据之和的最大值

求连续N个数据中所有连续M个数据之和的最大值。 下图所示。 在单元格B5中,给出了一个求连续几年薪水之和的最大值的公式。示例中是每连续4年(由单元格A5指定)薪水之和的最大值。 工作表的单元格A10中是2008年至2011年的薪水之和、B10是2009年至2012年的薪水之和,……,依此类推。其中单元格B10

COLUMN(Data)+MOD(ROW()-ROW($B$2),COLUMNS(Data))获取Data区域中第1行第1列的数据所在的列。数学原理:用需要输入数据的区域中当前单元格所在行的行号减去首行行号的结果,除以被提取单元格区域Data的列数的余数,用所得结果加上Data区域起始列号,即为要在当前单元格中放置的数据在Data区域中的列号。

Addrees(行号,列号,4,,”Sheet1”)以相对引用方式返回工作表Sheet1中相应行列号的地址。

INDIRECT(引用地址)返回引用地址所在单元格的数据。

使用IF函数让结果为空的单元格仍然返回为空,而不是0。

下面的几种情形与上文介绍的情形相似,原理相同,这里只给出公式,你可以自已调试体会。

按列顺序将区域中的数据转换成单独的一列

在单元格B2中的公式如下,然后拖动下拉至单元格B17。

按行顺序将区域中的数据转换成单独的一行

在单元格B2中的公式如下,然后向右拖动拉至单元格Q2。

按列顺序将区域中的数据转换成单独的一行

在单元格B2中的公式如下,然后向右拖动拉至单元格Q2。

小结

本例的关键在于求出需要提取的数据在Data区域中的行列号,其中的运算是精华所在。可以先用代表行列的数字找到规律,再用相应求得行号列号的函数代替。

Excel获取非空单元格

尝试使用一个公式,来消除指定单元格区域中的空单元格,即获得的值中不包括空单元格,如下图所示。 先不看下面的内容,自已试试! 公式思路 先找到非空单元格所在行的行号,获取行号并以行号作为INDEX函数的参数取出相应的值。 公式 选择单元格C1:C7,输入公式: =IFERROR(INDEX(A1:A7,S

浏览统计(最近30天)