VBAで自作関数を作ってVLOOKUPをちょっとだけ使いやすくする

VBA

こんにちは。テッシーです。

VLOOKUP使っていますか? SEであればほぼ必須なこの関数。 使いにくいですよね。 今回はこのVLOOKUPをちょっとだけ使いやすくする自作関数をVBAで作成してみましたので紹介します。
Public Function VLOOKUPEX(needle As String, search_range As Range, return_array, Optional if_not_find = "") As String
    Dim cell As Range
    Dim i As Long
    i = 1
    For Each cell In search_range
        If cell.Value = needle Then
            VLOOKUPEX = return_array(i).Value
            Exit Function
        End If
        i = i + 1
    Next

    VLOOKUPEX = if_not_find
End Function
今のところ完全一致だけにしか対応していないですが、これを定義して、ワークシート上で =VLOOKUPEX("検索対象", "A1:A100", "B1:B100", "見つからない場合") という感じで使うと、 見つかった場合は見つかった行に対する値 見つからない場合は”見つからない場合” が出力されます。 結構便利ですので、ぜひ使ってみてください。

コメント