當前位置:編程學習大全網 - 網站源碼 - Excel宏代碼。如何實現如圖的變換,要求:①按照圖片所示內容變換,指標可增加;②能自動匯總。謝謝!

Excel宏代碼。如何實現如圖的變換,要求:①按照圖片所示內容變換,指標可增加;②能自動匯總。謝謝!

程序窗口:

測試數據:

生成結果:

程序完整代碼:

Option Explicit

Sub 格式轉換()

Dim arr1, arr2, n&, i&, j&, jj&, t

arr1 = Sheets(1).UsedRange

n = UBound(arr1) * (UBound(arr1, 2) - 4) '結果表行數

ReDim arr2(1 To n, 1 To 6)

'表頭

j = 1

For Each t In Array(arr1(1, 1), arr1(1, 2), arr1(1, 3), "指標名稱", "檢測值", arr1(1, UBound(arr1, 2)))

arr2(1, j) = t

j = j + 1

Next t

'內容

n = 1

For i = 2 To UBound(arr1)

For j = 4 To UBound(arr1, 2) - 1

If arr1(i, j) <> "" Then

n = n + 1

jj = 1

For Each t In Array(arr1(i, 1), arr1(i, 2), arr1(i, 3), arr1(1, j), arr1(i, j), arr1(i, UBound(arr1, 2)))

arr2(n, jj) = t

jj = jj + 1

Next t

End If

Next j

Next i

'存表

Sheets(2).Activate

With Sheets(2).Range("a1").Resize(n, 6)

.Select

.Value = arr2

End With

End Sub

  • 上一篇:Android開發 藍牙連接問題
  • 下一篇:小說-宮崎駿-天空之城TXT下載地址啊 ..
  • copyright 2024編程學習大全網