Excel 2007 マクロのIF構文について
Excel 2007 マクロのIF構文について
Sheet1からSheet2にIF構文を使用して、
必要な情報を転記するマクロです。
下記マクロで実現できているのですが、IF構文が多く
もっと効率的なマクロがあるのではないかと考えています。
IF構文が2つありますが、1つにまとめるマクロがありましたら
お教えください。
Sub Rist()
Dim i, j As Long
Dim ws1, ws2 As Worksheet
Set ws1 = Worksheets("Sheet1")
Set ws2 = Worksheets("Sheet2")
'「Sheet1」シートを更新
Worksheets("Sheet1").Range("A1").ListObject.QueryTable.Refresh BackgroundQuery:=False
'「Sheet1」シートから「Sheet2」シートに転記
For i = 2 To ws1.Cells(Rows.Count, 1).End(xlUp).Row
For j = 2 To ws2.Cells(Rows.Count, 13).End(xlUp).Row
'「Sheet1」シートのL列から「Sheet2」シートのS列に転記
If ws2.Cells(j, "M") = ws1.Cells(i, "A") Then
ws2.Cells(j, "S") = ws1.Cells(i, "L")
End If
'「Sheet1」シートのG列から「Sheet2」シートのQ列に転記
If ws2.Cells(j, "M") = ws1.Cells(i, "A") Then
ws2.Cells(j, "Q") = ws1.Cells(i, "G")
End If
Next j
Next i
End Sub
お礼
そういう辞典があるのですね。知りませんでした。 近々、本屋に行って、探してきます。 ありがとうございます。