2016-06-08 61 views
1

我的VBA技能是新鮮的,因爲這是我一直致力於改進的內容。VBA - 將列複製並粘貼到單個列中,然後複製相應的標題x次

我已經搜索並得到了一些編碼的部分,但是,我不能做我需要的東西。 (每個條代表上excel工作表單元格

我知道這並不複雜,但當我需要計數,根據每個行的行數複製和粘貼標題時,我正在掙扎。

問候。

回答

1

假設你的數據在Sheet1,你想導致Sheet2試試下面的代碼:

Sub RangetoColumn() 
    Dim lastRow As Long, lastColumn As Long 
    Dim CurrentSheet As Worksheet, TargetSheet As Worksheet 
    Dim i As Long, j As Long, Count As Long 
    Dim colHeader As String 

    Set CurrentSheet = ThisWorkbook.Worksheets("Sheet1") '-->sheet with data 
    Set TargetSheet = ThisWorkbook.Worksheets("Sheet2")  '-->sheet to display result 
    lastColumn = CurrentSheet.Cells(1, Columns.Count).End(xlToLeft).Column 

    Count = 1 
    For i = 1 To lastColumn 
     lastRow = CurrentSheet.Cells(Rows.Count, i).End(xlUp).Row 
     If lastRow > 1 Then '-->check for data below header 
      colHeader = CurrentSheet.Cells(1, i).Value 
      For j = 1 To lastRow - 1 
       TargetSheet.Range("A" & Count).Value = colHeader 
       TargetSheet.Range("B" & Count).Value = CurrentSheet.Cells(j + 1, i).Value 
       Count = Count + 1 
      Next j 
     End If 
    Next i 
End Sub 
相關問題