如何将列和行转置/转换为单行?
如何将多行多列合并成一个长行?也许,这对你来说似乎很容易,因为你可以逐个复制并将它们手动连接成一行。但如果存在数百行和列,这将会非常耗时且繁琐。在这里,我将介绍一些快速技巧来解决这个问题。
使用Kutools for Excel将列和行转置/转换为单行
使用公式将列和行转置/转换为单行
假设你有一个如下截图所示的数据范围,你可以通过一个长公式将该范围的数据转换到新工作表的一行中。
请按以下方式应用公式:
1. 在当前工作簿的新工作表中,点击单元格A1,复制并粘贴此公式:=OFFSET(Sheet1!$A$1,((ROW()-1)*5)+(FLOOR(COLUMN()-1,4)/4),(COLUMN()-1)-(FLOOR(COLUMN()-1,4)))
注意:Sheet1!$A$1 是你想要使用的单元格区域引用。
上述公式中的 ROW()-1)*5,5 代表行号;而 COLUMN()-1,4)/4 中的 4 代表列号。你可以根据需要更改它们。
2. 然后向右拖动填充柄,直到出现数字0。在这种情况下,范围内的所有数据都已转置到新工作表的单行中。见截图:
使用VBA代码将列和行转置/转换为单行
以下VBA代码也可以帮助你将一个范围的数据转换为一行。
1. 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。
2. 点击 插入 > 模块,并在模块窗口中粘贴以下代码。
Sub TransformOneRow()
'Updateby20131120
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Ranges to be transform :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Paste to (single cell):", xTitleId, Type:=8)
Application.ScreenUpdating = False
xRows = InputRng.Rows.Count
xCols = InputRng.Columns.Count
For i = 1 To xRows
InputRng.Rows(i).Copy OutRng
Set OutRng = OutRng.Offset(0, xCols + 0)
Next
Application.ScreenUpdating = True
End Sub
3. 然后按 F5 键运行代码,弹出对话框让你选择要转换为一行的内容范围,然后点击 确定,另一个弹出对话框让你选择一个单元格以放置结果。见截图:
![]() |
![]() |
![]() |
然后点击 确定,所选范围内的内容将被转换为一行。见截图:
![]() |
![]() |
![]() |
注意:在 Set OutRng = OutRng.Offset(0, xCols + 0) 中,你可以将 0 更改为任何数字以满足你的需求。
例如,如果你想根据原始行用一列分隔结果,可以将 Set OutRng = OutRng.Offset(0, xCols + 0) 更改为 Set OutRng = OutRng.Offset(0, xCols + 1),结果如下所示:
使用 Kutools for Excel 将列和行转置/转换为单行
对于像我们这样的Excel初学者来说,以上两种方法可能有些困难,这里我要介绍一款实用工具——Kutools for Excel。
Kutools for Excel 包含300多种便捷的Excel工具。免费试用30天无限制。 立即获取
借助 Kutools for Excel 的 转换区域 工具,你可以快速将一个区域转换为单行,请按照以下步骤操作:
1. 选择要转置的区域。
2. 点击 Kutools > 区域 > 转换区域。
3. 在“转换区域”对话框中,选择 区域转单行 选项,见截图:
4. 然后点击 确定,并从弹出框中选择一个单元格以放置结果。
5. 点击 确定,范围内的数据已被转置为单行。见截图:
![]() |
![]() |
![]() |
如果你想了解更多关于此功能的信息,请访问 转换区域。
相关文章:
最佳 Office 办公效率工具
🤖 | Kutools AI 助手:基于智能执行,彻底革新数据分析 |生成代码|创建自定义公式|分析数据并生成图表|调用 Kutools Functions… |
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)... | |
高级 LOOKUP:多条件查找 (VLookup)|多值查找 (VLookup)|多表查找 (VLookup Across Multiple Sheets)|模糊查找 (Fuzzy Lookup)... | |
高级下拉列表:快速创建下拉列表|依赖型下拉列表|多选下拉列表... | |
列管理器:添加指定数量的列 |移动列 |切换隐藏列的可见状态| 比较区域及列... | |
特色功能:网格聚焦|设计视图|增强编辑栏|工作簿 & 工作表管理器|资源库(自动文本)|日期提取|合并数据|加密/解密单元格|按列表发送电子邮件|超级筛选|特殊筛选(筛选粗体/倾斜/删除线等)... | |
热门15 大工具集:12 款文本工具(添加文本、删除特定字符等)|50+ 种图表 类型(甘特图等)|40+ 实用公式(基于生日计算年龄等)|19 款插入工具(插入二维码、按路径插入图片等)|12 种转换工具(小写金额转大写、汇率转换等)|7 款合并与分割工具(高级合并行、分割单元格等)|...更多精彩等你发现 |
用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...
Office Tab 为 Office 带来标签式界面,让你的工作更加轻松
- 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
- 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
- 办公效率提升50%,每天帮你减少上百次鼠标点击!