您现在的位置是:首页 > Excel技巧>EXCEL快速实现多维转二维表格
excel二维表格转一维-EXCEL快速实现多维转二维表格
发布于2022-04-150人已围观
在工作中有遇到这样一个问题,将一张多维的表格按照月份转换为二维表格。如图所示
原始图
结果图
由于实际的数据量比较多,如果采取剪切、粘贴的方法,操作相当繁琐。这里我们介绍使用VBA代码实现上述要求.
详细源码:
Sub test()
Application.ScreenUpdating = False
a = 2
For j = 2 To Sheets(1).Cells(Rows.Count, 1).End(3).Row
Sheets(1).Cells(j, 1).Resize(1, 6).copy Cells(a, 1)
For i = 7 To 18
If Len(Sheets(1).Cells(j, i)) > 0 Then
Sheets(1).Cells(j, 1).Resize(1, 6).copy Cells(a, 1)
Cells(a, 7) = Sheets(1).Cells(1, i)
Cells(a, 8) = Sheets(1).Cells(j, i)
a = a + 1
End If
Next i
Next j
Application.ScreenUpdating = True
End Sub
代码检查无误之后,依次选择“文件→关闭并返回到Microsoft Excel”命令,返回Excel主界面,按下“Alt+F8”组合键,打开“宏”对话框,选择并运行宏。
效果图
使用公式法:
选择F2单元格,在编辑栏输入公式“=OFFSET(原表!A$2,MOD(ROW(A11),11),)”,向右、向下拖拽填充柄至F2单元格;选择G2单元格,在编辑栏输入公式“=OFFSET(原表!$G$1,(COLUMN(A1)>1)*(MOD(ROW(A1)-1,11)+1),INT((ROW(A1)-1)/11))”,向右拖拽填充柄至H2单元格,公式执行之后向下拖拽填充柄,即可看到图5所示的转换效果。
- 上篇文章:Excel VBA动态设置行高(根据某一列每行的字符数量)
- 下篇文章:Excel文本透视-行列转置
相关文章
文章评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~