EXCEL中对一列数据每隔n行提取数据出来
工作中,当表格中记录的数据较多,我们又不需要那么多的数据时,同时想希望对一列数据每隔n行提取一个数据出来,这时我们便可以利用excel提供的公式进行数据的提取,处理数据也会更方便。。。
以下便是我们要操作的数据了,假如我们想将C列的一整列数据,每隔2行取一个数据出来,
在想要存放所提取出来数据的地方,填入以下公式
=OFFSET($C$1,ROW(C1)*2,0)
我这里在E2单元各填入,公式里用到了两个函数,一个是OFFSET,一个是ROW。
OFFSET(reference, rows, cols, [height], [width])函数的作用:返回对单元格或单元格区域中指定行数和列数的区域的引用。 返回的引用可以是单个单元格或单元格区域。 可以指定要返回的行数和列数。
OFFSET 函数语法具有下列参数:
Reference 必需。 要基于偏移量的引用。 引用必须引用单元格或相邻单元格区域;否则,OFFSET 返回#VALUE! 错误值。
例如=OFFSET($C
1
,
2
,
0
)
便
是
返
回
C
1
单
元
格
往
下
偏
移
2
个
单
元
格
里
的
值
(
C
3
)
,
=
O
F
F
S
E
T
(
1,2,0)便是返回C1单元格往下偏移2个单元格里的值(C3),=OFFSET(
1,2,0)便是返回C1单元格往下偏移2个单元格里的值(C3),=OFFSET(C
1
,
5
,
0
)
便
是
返
回
C
1
单
元
格
往
下
偏
移
5
个
单
元
格
里
的
值
(
C
6
)
,
=
O
F
F
S
E
T
(
1,5,0)便是返回C1单元格往下偏移5个单元格里的值(C6),=OFFSET(
1,5,0)便是返回C1单元格往下偏移5个单元格里的值(C6),=OFFSET(C
10
,
−
5
,
0
)
便
是
返
回
C
10
单
元
格
往
上
偏
移
5
个
单
元
格
里
的
值
(
C
5
)
,
=
O
F
F
S
E
T
(
2
,
10,-5,0)便是返回C10单元格往上偏移5个单元格里的值(C5),=OFFSET(2,
10,−5,0)便是返回C10单元格往上偏移5个单元格里的值(C5),=OFFSET(2,A$1,0)便是返回A1单元格往右偏移2个单元格里的值(C1)。
///
Rows 必需。 需要左上角单元格引用的向上或向下行数。 Rows 可为正数(这意味着在起始引用的下方)或负数(这意味着在起始引用的上方)。
Cols 必需。 需要结果的左上角单元格引用的从左到右的列数。Cols 可为正数(这意味着在起始引用的右侧)或负数(这意味着在起始引用的左侧)。
高度 可选。 需要返回的引用的行高。 Height 必须为正数。
宽度 可选。 需要返回的引用的列宽。 Width 必须为正数。
备注
如果工作表边缘上的行和 cols 偏移引用,OFFSET 返回#REF! 错误值。
如果省略 height 或 width,则假设其高度或宽度与 reference 相同。
OFFSET 实际上并不移动任何单元格或更改选定区域;它只是返回一个引用。 OFFSET 可以与任何期待引用参数的函数一起使用。 例如,公式 SUM(OFFSET(C2,1,2,3,1)) 可计算 3 行 1 列区域(即单元格 C2 下方的 1 行和右侧的 2 列的 3 行 1 列区域)的总值。
ROW([reference])函数的作用:返回引用的行号。
ROW 函数语法具有一个参数:
Reference 可选。 需要得到其行号的单元格或单元格区域。
如果省略 reference,则假定是对函数 ROW 所在单元格的引用。
如果 reference 为一个单元格区域,并且 ROW 作为垂直数组输入,则 ROW 将以垂直数组的形式返回 reference 的行号。
Reference 不能引用多个区域。
例如公式中ROW(C1)便是放回1,ROW(C10)则是返回10
=OFFSET($C$1,ROW(C1)*2,0)
两个公式组合起来的意思便是:返回C1单元格往下偏移2个单元格里的值,其中$C$1是绝对引用,将公式复制到其他单元格的时候,这个单元格引用的区域不会改变,与后面的C1相比,将公式复制到其他地方时,C1会跟着做相应的改变
将公式往下填充
更多推荐
所有评论(0)