私が達成したいのは、特定の基準に基づいてWS1からWS3にデータをコピーすることです。
私は2つのワークシートを持っています:
WS1 = RAW DATA
WS2 = ATLAS DATA
両方の列Aには、一意の識別子があります。私がやりたいのは、を作成することWS3=Reconciliation
です。次に、WS1に対してWS2の値を検索します。一致するものが見つかった場合、WS1からWS3に行をコピーしたいのですが、コードをリバースエンジニアリングして、以下のコードを作成しました。
Sub CopyAndPaste()
Dim x As String, CpyRng As Range
Dim mFIND As Range, mFIRST As Range
With Sheets("RAW DATA")
Range("A:A").Select
On Error Resume Next
End With
With Sheets("ATLAS DATA")
Set mFIND = .Range("A:A").Find(x, LookIn:=xlValues, LookAt:=xlWhole)
If Not mFIND Is Nothing Then
Set CpyRng = mFIND
Set mFIRST = mFIND
Do
Set CpyRng = Union(CpyRng, mFIND)
Set mFIND = .Range("A:A").FindNext(mFIND)
Loop Until mFIND.Address = mFIRST.Address
CpyRng.EntireRow.Copy Sheets("Rec").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
End With
End Sub