1. ホーム
  2. vba

[解決済み] 文字列が文字列で始まるかどうかをテストしますか?

2023-04-06 15:18:15

質問

VBAで、文字列が部分文字列で始まっているかどうかをテストする最も簡単な方法は何ですか? Java には startsWith . VBAには同等のものがありますか?

どのように解決するのですか?

いくつかの方法があります。

InStr

を使用することができます。 InStr ビルドイン関数を使って、String が部分文字列を含むかどうかをテストすることができます。 InStr は最初のマッチのインデックスか0を返します。 ですから、次のようにすればStringが部分文字列で始まっているかどうかをテストできます。

If InStr(1, "Hello World", "Hello W") = 1 Then
    MsgBox "Yep, this string begins with Hello W!"
End If

もし InStr が返す 1 とすると、文字列 ("Hello World") は、部分文字列 ("Hello W") で始まることになります。

のようになります。

また like という比較演算子も使えます。

If "Hello World" Like "Hello W*" Then
    MsgBox "Yep, this string begins with Hello W!"
End If

ここでは、アスタリスク(*)を使って、文字列が部分文字列で始まっているかどうかをテストしています。