VBA代码二维表转一维线性表

2026-02-13 23:20:12

在工作中经常会把二维表转为一维

VBA代码二维表转一维线性表

VBA代码二维表转一维线性表

VBA代码二维表转一维线性表

VBA代码二维表转一维线性表

方法/步骤

原始数据(从A1单元格开始黏贴):

类别  代码  1月销售  2月销售  3月销售  4月销售  5月销售  

A  A1  1  2  3  4  5  

A  A2  2  3  4     6  

A  A3  3  4  5  6  7  

A  A4  4     6  7  8  

B  B1  5  6  7  8  9  

B  B2  6  7  8     10  

B  B3     8  9  10  11

B  B4  8  9  10  11  12  

B  B5  9  10  11  12  13

1、ALT+F11打开VBE窗开插入代码

Public Sub TEST()

Dim arr

Dim i, j, n

arr = Range("A1:G10")

n = 1

    For i = 2 To UBound(arr)

            For j = 3 To 7

                Sheets("sheet2").Cells(n, 1) = Sheets("sheet1").Cells(i, 1)

                Sheets("sheet2").Cells(n, 2) = Sheets("sheet1").Cells(i, 2)

                Sheets("sheet2").Cells(n, 3) = Sheets("sheet1").Cells(1, j)

                Sheets("sheet2").Cells(n, 4) = Sheets("sheet1").Cells(i, j)

                    n = n + 1

            Next

    Next

End Sub

sheet1为二维表所在的工作表,sheet2为生成的线性表。

2、返回到视图执行宏

猜你喜欢