簡體   English   中英

Excel vba - 行到列並保留第一列

[英]Excel vba - rows to columns and keeping first columns

我正在制定一年的計划,其中前 3 列中有標簽,然后是下一列中 12 個月的值。 我想在 12 個月內將這些值放在另一個之下,並為每個月重復標簽,然后繼續下一個記錄。 我相信它應該有一個循環,但我不確定如何制作它。

截屏

我的數據看起來像屏幕截圖上表 A 中的數據 我必須使它看起來像屏幕截圖上的表 B

為了移動/復制列中行的值,您可以像在我的下一個代碼示例中一樣使用 Transpose 函數:

   Dim rng1 As Range, rng2 As Range, arr1 As Variant, arr2 As Variant
   Set rng1 = Range("A1:H10"): Set rng2 = Range("J1:J8")
   arr1 = rng1.value
   arr2 = Application.WorksheetFunction.Transpose(arr1)
   rng2.value = arr2

當然可以優化代碼,以便自動確定要轉置的行的列數並根據它構建列范圍。 我想收到一些反饋,確認(或不)這是您真正需要的。 至少,這是我可以假設查看您附加的圖片......示例代碼會將(第一)行( Range("A1:H10") )的內容轉置到 J:J 列( Range("J1:J8") )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM