2017-04-14 7 views
0

VBAで新しく追加されました。 私は3枚あります: '日曜日'、 'coords'、 'filtered'。 '日曜日'のシートの 'A'列が 'coords'シートの 'J'列の値と等しいかどうかを確認したいと思います。 TRUEの場合は、 'filtered'シートの行をコピーします。列にVBAの別の列の値が含まれている場合は、行全体をコピーします。

これまでのところ、私は次のコードを試してみました:

Sub CopyRow() 

Dim lastRow As Long 
Dim sheetName1 As String 
Dim sheetName2 As String 
Dim sheetName3 As String 

    sheetName1 = "Sunday"   'Insert your sheet name here 
    sheetName2 = "coords" 
    sheetName3 = "filtered" 
    lastRow = Sheets(sheetName1).Range("A" & Rows.Count).End(xlUp).Row 

    For lRow = 2 To lastRow   'Loop through all rows 

     If Sheets(sheetName1).Cells(lRow, "A") = Sheets(sheetName2).Cells(lRow, "J") Then 
      c.EntireRow.Copy Worksheets(sheetName3).Range("A" & Rows.Count).End(xlUp).Offset(1) 
     End If 

    Next lRow 

End Sub 

あなたが任意の行にでカラムJを値の有無を確認したい場合はすべてのヘルプは大幅

+0

これまでに何を試みましたか? – sktneer

+0

ありがとうございます。更新された質問をご覧ください –

答えて

1

を高く評価され、これを試してみてください:

If Application.CountIf(Sheets(sheetName2).Columns("J"), Sheets(sheetName1).Cells(lRow, "A").Value2) > 0 Then 
    Sheets(sheetName3).Range("A" & Rows.count).End(xlUp).offset(1).EntireRow.Value = Sheets(sheetName1).Rows(lRow).Value2 
End If 
関連する問題