Sub データを検索して代入する_配列()
Dim シート1 As Worksheet
Dim シート2 As Worksheet
Dim データ1 As Variant
Dim データ2 As Variant
Dim 結果 As Variant
Dim i As Long, j As Long
' シートの参照
Set シート1 = Worksheets("Sheet1") ' シート名を適切に変更
Set シート2 = Worksheets("Sheet2") ' シート名を適切に変更
' シート1のデータを配列に読み込む
データ1 = シート1.Range("A1:C" & シート1.Cells(シート1.Rows.Count, "A").End(xlUp).Row).Value
' シート2のデータを配列に読み込む
データ2 = シート2.Range("A1:C" & シート2.Cells(シート2.Rows.Count, "A").End(xlUp).Row).Value
' 結果を格納する配列を初期化
ReDim 結果(1 To UBound(データ1, 1), 1 To 1)
' シート1のデータに対して処理
For i = LBound(データ1, 1) To UBound(データ1, 1)
' シート2のデータに対して処理
For j = LBound(データ2, 1) To UBound(データ2, 1)
' 検索値が一致する場合
If データ1(i, 1) = データ2(j, 1) And データ1(i, 2) = データ2(j, 2) Then
' 結果を代入
結果(i, 1) = データ2(j, 3) ' シート2のc列に対応
Exit For ' 一致したらループを抜ける
End If
Next j
Next i
' シート1のC列に結果を代入
シート1.Range("C1:C" & UBound(結果, 1)).Value = 結果
End Sub