Table of contents
通常情况下,用户需要将多列转换为行。 因此,Excel将多列转换为行是用户经常做的一个操作。 Excel功能 , 输送 , 诱导性 ,以及 索引 职能。 权力查询 ,以及 VBA宏程序 可以将列转换为行。
比方说,我们 雇员姓名 和 薪资数据 由于不可避免的原因,我们必须将列转为行。
在这篇文章中,我们演示了Excel将多列转为行的几种方法,使用的是 Excel功能 , 职能 , 权力查询 ,以及 VBA宏程序 .
下载Excel工作簿
将列转为行.xlsm在Excel中把多个列转为行的6种简单方法
方法1:使用粘贴选项将多列转为行
Excel允许用户以多种格式粘贴数据,如 价值 , 公式 , 转位 ,只有 格式 ,等等。我们可以用 上下文菜单 粘贴移调选项 来将列转化为行。
步骤1。 突出显示你要转置的整个范围。 右键点击 就可以了。 上下文菜单 出现。 从 上下文菜单 选择 拷贝 .
第2步。 现在,选择任何空白单元格(即。 G4 )相邻的范围,那么 右键点击 就可以了。 点击 转位 从 粘贴选项 .
🔼 你也可以调出 粘贴专用 窗口使用 键盘快捷键 CTRL+ALT+V 之后,选择 转位 从 粘贴专用 选项。 最后,点击 认可 .
🔼执行 转位 选项,从 上下文菜单 或 粘贴专用 导致将选定的多列转换为行,如下图所示。
阅读更多。 如何在Excel中切换行和列(5种方法)
方法2:使用TRANSPOSE函数将列转为行
ǞǞǞ 输送 功能 我们可以使用 "列 "直接转换为 "行",反之亦然。 输送 无论有多少列,也无论范围有多大,都可以使用该函数。 该函数的语法为 输送 功能是
输送(阵列)
步骤1。 在任何相邻的单元格中使用以下公式(即:。 G4 ),将列转换为行。
=transpose(b4:e12)
这里 B4:E12 是数组参数。
第2步。 撞击 进入 瞬间,所有的列被转换为行。
🔄 有时,数据集包含了 空白单元格 并在移位后,Excel插入了 0's 为了避免这个问题,请修改 输送 的功能,与 基金会 功能 在这种情况下,应用的公式可以是
=TRANSPOSE(IF(B4:E12="","",B4:E12))
阅读更多:如何在Excel中把列移到多行(6种方法)。
方法3:用INDIRECT函数将列转换为行
在我们想建立链接或从现有范围获取数据的情况下,我们可以使用 诱导性 功能 . 诱导性 的功能注入了 专栏 函数指的是范围内的条目。 诱导性 功能是
INDIRECT (ref_text, [a1])
这些声明定义了
参考文献 参考资料(作为文本)。
a1 的一个布尔值指示。 A1 或 R1C1 样式的单元格引用。 默认情况下,它是 A1 风格= 为真 . [可选]
步骤1。 在任何空白单元格中键入后一个公式(即:。 G4 ).
=INDIRECT("b"&COLUMN()-3)
ǞǞǞ ret_text (即。 "b"&COLUMN()-3 )有 2 零件。 第一届 一个是 专栏 功能 的人,通过了 栏目编号 和 第2次 一个是 专栏名称 ......。 参考文献 结合这些 2 则构成一个单元格引用 3 少于 专栏 结果,最终结果变成了 B(7-3) B4 ...因此。 B4 单元格条目会显示在 G4 .
第2步。 重复进行 步骤1 用下面的公式代替前面的公式,在 G5 , G6 ,以及 G7 .
=INDIRECT("c"&COLUMN()-3)
=INDIRECT("d"&COLUMN()-3)
=INDIRECT("e"&COLUMN()-3)
所有这些 3 公式声明的参数与前一个公式相同。 而且它们获取了各自单元格的条目(即:。 G5=C4 , G6=D4 ,以及 G7=E4 ).
第3步。 使用 填充手柄 所有单元格的条目都按规定进行了移位。
阅读更多:Excel VBA:从单元格地址获取行和列号(4种方法)
类似读物
- 如何在Excel图表中切换行和列(2种方法)
- 在Excel中添加多行和多列(各种可能的方法)
- 如何用Excel公式跳过其他每一列(3种方法)
- Excel VBA:按行和列号设置范围(3个例子)
- 如何在Excel中根据数值查找列号
方法4:使用INDEX函数将列转为行
类似于 方法三 ,在 索引 功能 带来的数据来自于一个给定的位置。 索引 功能是
INDEX(array, row_num, [col_num])
步骤1。 在任何空白单元格中写下以下公式 G4 .
=index($b$4:$e$14,column()-6,1)
在这个公式中。 $B$4:$E$14 指的是 阵列 争论。 专栏 函数返回插入公式的列号(即。 G4 )。 因此。 COLUMN()-6 结果( 7-6 ) 1 作为 行数_num 为 阵列 而且已经 1 是指 col_num 内的 阵列 .
第2步。 迭代公式为 G5 , G6 ,以及 G7 只是通过改变 col_num 如下图所示。
=index($b$4:$e$14,column()-6,2)
=index($b$4:$e$14,column()-6,3)
=index($b$4:$e$14,column()-6,4)
这些公式从同一个 阵列 , 第1行 和 第2栏 , 3 ,以及 4 你可以看到,结果值描述的是公式获取的列标题。
第3步。 拖动 填充手柄 横向插入逐列条目。 从而将列转化为行。
阅读更多。 如何查找Excel中的列索引号(2种方法)
方法5:使用Power Query将多列转为行
权力查询 是一个强大的工具,可以根据需要转换数据集。 权力查询 提供了一个 转型 选项卡,其中的多个选项包括 转位 是可用的。 我们可以使用 转位 操作,将多列转换为行。
步骤1。 选择整个数据集,然后转到 数据 > 点击 从表/范围 (来自 获取和转换数据 节)。
第2步。 Excel倾向于将整个数据集转换为一个 表 其结果是 创建表格 出现对话框,点击 认可 .
第3步。 一会儿,Excel加载了 强大的查询编辑器 如下图所示。
➧ 选择 转型 节。
➧ 点击进入 转位 .
第4步。 在执行了 转位 操作,你必须加载转置的数据。 移动到 首页 > 点击 关闭 & 载入 > 选择 关闭 & 载入 .
🔼 将转置的数据加载到新的工作表中需要一段时间。 最终,Excel加载的数据将多列转换为行,你可以从下面的图片中观察到。
阅读更多:如何在Excel中把多行转换成多列(9种方法)。
方法6:使用VBA宏将多列转为多行
VBA 巨集 我们可以写几行宏来将多列转为行。
步骤1。 要插入一个宏,首先要打开 微软Visual Basic 使用 ALT+F11 然后,选择 插入 (从 工具栏 )> 点击 模块 来插入一个。
第2步。 将以下宏粘贴在 模块 .
Sub ColumnToRowTransposing() Dim wrkRng As Range Dim trgtRng As Range Set wrkRng = Application.InputBox(Prompt:="提供列", Type:=8) Set trgtRng = Application.InputBox(Prompt:="选择目标单元", Type:=8) wrkRng.Copy trgtRng.Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True Application.CutCopyMode=False End Sub
该宏在开始操作时,会选择要转置的区域和要插入转置数据的单元格,使用 VBA输入框 功能 那么, 粘贴专用 方法将整个范围作为转置数据粘贴到给定的单元格。
第3步。 使用 F5 宏的运行。 Maco启动了第一个 输入框 插入范围。 提供范围,然后点击 认可 .
第4步。 之后,Excel将 第2次 输入框 来分配单元格。 提供任何方便的单元格参考,然后 点击 关于 认可 .
🔼 最后,Excel将整个数据集的列转换为行。
VBA宏程序 可以处理空白单元格,提供 跳过空白 中的声明选项。 真 和 假的 根据你的需要修改该宏,使之更适合你的数据。
阅读更多:Excel 宏程序:将多行转换为多列(3个例子)
总结
在这篇文章中,我们展示了多种特性、功能以及 VBA宏程序 在Excel中,将多列转为行。 输送 函数以最方便的方式将列转换为行。 其他函数,如I 错别字 或 索引 希望上述方法能澄清你对转置的理解。 如果你有进一步的疑问或有什么要补充的,请评论。