|
▼シン さん:
>sheet1のA列とsheet2のA列が同じ値の時、(sheet1 A1= sheet2 A1など A1〜A15まで比較)
>sheet1のA欄と同じ値の行のB列にsheet2 Aの値をコピーできるようにしたいです。
処理行数がそんなに多くなさそうなので、
ワークシート関数Matchで sheet1のA列のセル値を sheet2のA列に求め
あったら その行をコピペするサンプルです。
Sub Try1() 'WS2 → WS1
Dim WS1 As Worksheet
Dim WS2 As Worksheet
Dim r1 As Range, c As Range
Dim r2 As Range
Dim r22 As Range
Set WS1 = Worksheets("Sheet1")
Set WS2 = Worksheets("Sheet2")
Set r1 = WS1.Range("A1", WS1.Cells(WS1.Rows.Count, 1).End(xlUp))
Set r2 = WS2.Range("A1", WS2.Cells(WS2.Rows.Count, 1).End(xlUp))
Set r22 = r2.Offset(, 1).Resize(, 4)
Dim m
r1.Offset(, 1).Resize(, 4).ClearContents
For Each c In r1
m = Application.Match(c, r2, 0)
If IsNumeric(m) Then
r22.Rows(m).Copy c(1, 2)
End If
Next
End Sub
|
|