2016-12-13 7 views
0

@ShaiRadoを使用すると、メインシート「トラッカー」からダッシュボードに情報をコピー&ペーストできるようになりました。列Jのステータスは「完了」「進行中」または「今後」のいずれかです。VBAマクロコピーしてセルの値に基づいて特定の場所に貼り付けます

私は本当に好きですが、列Jのステータスに基づいて離散した別の場所に貼り付ける情報です。 A1:A50、A60:A100とA101:A150に座っているすべての「進行中」のすべての立ち上がりのすべてを一緒に座っている、またはAK、MS 、U-ACのようなもの?ここで

は、私がこれまで持っているものです。

Option Explicit 

Sub Copybasedonstatus() 

'Niall McCracken 12/12/16 

Dim lRow As Long, cRow As Long, j As Long 

With Sheets("Tracker") 
    lRow = .Range("A800").End(xlUp).Row 

    ' another method of finding last row in Column A (skipping blank cells in the middle) 
    lRow = .Cells(.Rows.Count, "A").End(xlUp).Row 

    For j = lRow To 1 Step -1 
     cRow = Sheets("Sheet1").Range("A800").End(xlUp).Row 

     Select Case .Range("J" & j).Value 
      Case "Upcoming" 
       .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Range("A" & cRow + 1) 

      Case "Complete" 
       .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Range("A" & cRow + 1) 

      Case "In Progress" 
       .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Range("A" & cRow + 1) 

     End Select 
    Next 
End With 

End Sub 
+0

正確に質問です何? – Rdster

答えて

0

私たちは、あなたがお勧めの列に使用可能な次の行を見つけるために、例を変更することができます。

Case "Upcoming" 
    .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Cells(Sheets("Sheet1").Cells(Sheets("Sheet1").Rows.Count, "A").End(xlUp).Row + 1, "A") 

Case "Complete" 
    .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Cells(Sheets("Sheet1").Cells(Sheets("Sheet1").Rows.Count, "M").End(xlUp).Row + 1, "M") 

Case "In Progress" 
    .Range("A" & j & ":K" & j).Copy Destination:=Sheets("Sheet1").Cells(Sheets("Sheet1").Cells(Sheets("Sheet1").Rows.Count, "U").End(xlUp).Row + 1, "U") 
関連する問題