【エクセルマクロ】複数条件が一致で別シート転記:コピペで使えるコード

ExcelVBA_複数条件一致で別シート転記-アイキャッチ エクセルマクロで効率化する

エクセルマクロで、複数条件が一致で別シート転記するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

複数条件が一致で別シート転記

以下のExcelVBAを実行すると、複数条件が一致するデータを別シートへ抽出します。


Sub 複数の条件があうものを抽出()

Dim Chusyutu_Sht As Worksheet
Dim Tanka_Sht As Worksheet
Dim MyList() As Variant
Dim LastRow As Long
Dim i As Long
Dim j As Long
    
    Set Chusyutu_Sht = Sheets("抽出")
    Set Tanka_Sht = Sheets("単価表")
    
    '「単価表」シート A列~C列のデータを配列に格納
    Tanka_Sht.Select
    MyList = Tanka_Sht.Range("A2", Range("A" & Rows.Count). _
                     End(xlUp)).Resize(, 3).Value

    '最終行
    LastRow = Chusyutu_Sht.Cells(Rows.Count, 1).End(xlUp).Row

    '「抽出」シート ループ
    For i = 1 To LastRow
        
        For j = 1 To UBound(MyList)
        
            '複数条件一致で別シート転記
            If Chusyutu_Sht.Cells(i, 1) = MyList(j, 1) And _
                    Chusyutu_Sht.Cells(i, 2) = MyList(j, 2) Then
                    
                Chusyutu_Sht.Cells(i, 3) = MyList(j, 3)
            
            End If
        Next j
    Next

End Sub

 

マクロ実行前

「単価表」シートをもとに、「抽出」シートに条件にあうデータを入力したいと思います。


 

マクロ実行後

”商品” と ”産地” が一致するデータを「抽出」シートへ転記します。


 
 
この記事がお役に立てれば幸いです。
 

【エクセルマクロ】ワークシート処理を自動化する:超便利29選
...

 

「ノンプログラマーのGAFA部長が教えるExcelマクロ入門」
挫折につながるエラーの原因も先回りして丁寧に解説
マクロのたった1割を学べばエクセル業務の9割以上は効率化できる