Excel-VBA 別シートの値を検索取得するマクロ-VLookup関数

2019/12/02

プログラム

t f B! P L
Excel VBAマクロ。今回は
別シートの値を検索取得するマクロ-VLookup関数
を示す。

■Excel-VBA 別シートの値を検索取得するマクロ-VLookup関数

Sub sample21()
Dim i As Long
Dim MR As Long
Dim X As String
Dim ws1 As Worksheet
Set ws1 = Worksheets("Sheet2")

ws1.Cells(1, 1).CurrentRegion.Name = "list1"
Dim SA As Range
Set SA = ws1.Range("list1")

MR = Cells(Rows.Count, 2).End(xlUp).Row

    AA = Range(Cells(1, 19), Cells(MR, 19))
    XX = Range(Cells(1, 8), Cells(MR, 8))
    For i = 2 To MR
        X = XX(i, 1)
        AA(i, 1) = Application.VLookup(X, SA, 4, False)
    Next i
    Range(Cells(1, 19), Cells(MR, 19)) = AA

    Range(Cells(1, 19), Cells(MR, 19)).Replace What:="#N/A", replacement:="0"
End Sub
※[2.~6.] 変数宣言とセット。
※[8.] Sheet2の検索対象セル範囲に名前をつける。
※[9.~10.] 変数宣言とセット。
※[12.] 最終行数取得。
※[14.~15.] 19列目(S列)と8列目(H列)を配列に格納。
※[16.~19.] X=8列目(H列)の値を範囲「SA」で検索
⇒ある場合「SA」4列目の値を配列AAに格納。
ない場合「#N/A」となる。
最終行までFor Nextループ。
※[20.] 配列AAの値を19列目(S列)のセルに格納。
※[22.] 19列目(S列)の「#N/A」を「0」に置換。

以上。

ブログ アーカイブ

ラベル

このブログを検索

スポンサーリンク

自己紹介

機械メーカー総合職正社員10年勤務後退職。 エクセルVBAプログラム歴 5年。 LibreOffice(無料)でVBAマクロ検証。
■Fortniteクエスト攻略動画■
■Twitter■
⇒詳細プロフィールを表示

QooQ