excel行转列怎么做Excel中多行表格转多列表格excel表格把多行转成一列




excel行转列怎么做Excel中多行表格转多列表格excel表格把多行转成一列

2022-07-20 21:22:19 网络知识 官方管理员

利用OFFSET+COLUMN+ROW这3个函数组合,我们可以将多行表格转成多列表格。

下图中,将B2:C10多行的单元格区域转成B12:J13多列的单元格区域。

excel行转列怎么做(Excel中多行表格转多列表格)(1)

具体操作步骤如下:

1、选中B12单元格,在编辑栏中输入公式=OFFSET($B$2,COLUMN(B2)-2,ROW(B2)-2)&"",按回车键回车。

excel行转列怎么做(Excel中多行表格转多列表格)(2)

2、将公式向右填充至J12单元格,向下填充至J13单元格即可。

excel行转列怎么做(Excel中多行表格转多列表格)(3)

3、公式解析。

(1)COLUMN(B2):

COLUMN函数的功能是返回一个引用的列号。

COLUMN(B2)的意思是返回B2单元格所在列的列号,为2。当公式向右填充时,B2会变成C2、D2...,列号会依次递增。当公式向下填充时,B2会变成B3、B4...,列号不变。

excel行转列怎么做(Excel中多行表格转多列表格)(4)

(2)ROW(B2):

ROW函数的功能是返回一个引用的行号

ROW(B2)的意思是返回B2单元格所在行的行号,为2。当公式向右填充时,B2会变成C2、D2...,行号不变。当公式向下填充时,B2会变成B3、B4...,行号会依次递增。

excel行转列怎么做(Excel中多行表格转多列表格)(5)

(3)=OFFSET($B$2,COLUMN(B2)-2,ROW(B2)-2):

OFFSET函数的功能是:以指定的引用为参照系,通过给定偏移量返回新的引用。

这里的$B$2就是参照系,COLUMN(B2)-2返回的结果为0,ROW(B2)-2返回的结果为0,代入公式的:=OFFSET($B$2,0,0),该公式的意思是:以B2单元格为参照系,向下移动0行,向右移动0列,也就是没移动,所以是B2单元格本身的内容“产品编号”。当公式填充到C3单元格时,公式变成:=OFFSET($B$2,1,0),该公式的意思是:以B2单元格为参照系,向下移动1行,向右移动0列,所以是B3单元格本身的内容“PCD00001”,以此类推。

excel行转列怎么做(Excel中多行表格转多列表格)(6)

(4)=OFFSET($B$2,COLUMN(B2)-2,ROW(B2)-2)&"":

公式后面使用连接符(&)与空字符串("")连接,有2个作用:当返回的数据是数值型时,加上&"",变成了文本型数据;当返回是空单元格数据时,比如当公式右拉填充至K12单元格时,公式=OFFSET($B$2,9,0),返回的结果是0,加上&"",就能把0屏蔽掉,显示为空。

4、完整的动图演示如下。

excel行转列怎么做(Excel中多行表格转多列表格)(7)

今天就跟大家分享到这里,这篇文章如果对您有帮助!

发表评论:

最近发表
网站分类
标签列表