InstrRev関数

InstrRev 関数はある文字列の中から指定した文字列を後方から検索し、最初に見つかった文字位置(先頭からの文字数)を返します。InStr 関数とは構文が異なりますので、注意してください。

スポンサーリンク

InstrRev関数の使用方法

構文
InstrRev(String1, String2 [, Start] [, Compare])

【戻り値】 バリアント型 (内部処理形式 Long の Variant)
引数名 省略 説明
String1 × 検索対象となる文字列式を指定します。
String2 × 引数 String1 内で検索する文字列式を指定します。
Start 文字列の検索を開始する位置を指定します。省略した場合は、文字列の最後から検索が開始されます。
Compare 文字列比較の比較モードを指定する数値を設定します。 引数 Compare を省略すると、Option Compare ステートメントの設定に応じて、比較モードが決まります。
引数Compareに指定可能な定数
定数 説明
vbUseCompareOption -1 Option Compare ステートメントの設定を使用して比較を行います。
vbBinaryCompare 0 バイナリ モードで比較を行います。
vbTextCompare 1 テキスト モード(大文字/小文字、全角/半角 区別なし)で比較を行います。

InstrRev関数の使用例

同一の文字列に対して、パラメータをいくつか変更して検索する例です。変更したパラメータにより検索結果がかわってくるのがわかると思います。

Sub sample_ef029_01()
    Dim wStr    As String

    wStr = "ABCDEabcdeabcdeABCDE"

    Debug.Print "文字列:" & wStr
    '[1]:文字列の後方から「ABC」を検索
    Debug.Print "検索結果[1]:" & InStrRev(wStr, "ABC")
    '[2]:2文字目から「ABC」を検索
    Debug.Print "検索結果[2]:" & InStrRev(wStr, "ABC", 15)
    '[3]:テキストモード(大文字・小文字・半角・全角区別なし)で検索
    Debug.Print "検索結果[3]:" & InStrRev(wStr, "ABC", 15, vbTextCompare)
End Sub
タイトルとURLをコピーしました