文字列:文字列を検索してその最初の文字位置を返す(InStr 関数,InStrB 関数)
InStr 関数・InStrB 関数の使い方
【書式】
result = { InStr | InStrB } ( [ start ], string1, string2 [, compare ] )
引数・戻り値
- start ・・・ 検索の開始位置を指定します。省略すると、先頭の文字から検索されます。もし、start に、Null 値が含まれている場合は、エラーが発生します。省略可能。ただし、引数 compare を指定した場合は、start を省略することはできません。
- string1 ・・・ 検索対象の文字列・文字列式を指定します。
- string2 ・・・ 引数 string1 内で、検索する文字列を指定します。
- compare ・・・ 文字列の比較モード(-1,0,1)を指定します。省略時は、「Option Compare ステートメント」の設定により比較モードが決まります。
値 定数 内容 -1 vbUseCompareOption Option Compare ステートメントの設定を使用して比較 0 vbBinaryCompare バイナリモードの比較 1 vbTextCompare テキストモードの比較(大文字・小文字を同一視) 2 vbDatabaseCompare Microsoft Access の場合のみ有効
- result ・・・ ある文字列(string1)の中から指定した文字列(string2)を検索し、最初に見つかった文字位置。( ※ InStr の場合は、先頭からその位置までの文字数。InStrB の場合は、先頭からその位置までのバイト数。)
内容 戻り値 string1 が長さ 0 の文字列(””) 0 string1 が Null 値 Null 値 string2 が長さ 0 の文字列(””) start string2 が Null 値 Null 値 string2 が見つからないとき 0 string2 が string1 内で見つかったとき 見つかった文字列の位置
InStr は、文字数、InStrB はバイト数start の値が string1 の文字数を超える時 0
InStr 関数・InStrB 関数 の使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
Sub Sample_InStr() Dim str1, str2, str3 Dim s1, s2, s3 str1 = "abcdeABCDE" str2 = "あいうえおかきくけこ" str3 = "こんにちは! Hello!!" Debug.Print InStr(1, str1, "ABC", vbBinaryCompare) '6 Debug.Print InStr(1, str1, "ABC", vbTextCompare) '1 Debug.Print InStrB(1, str1, "ABC", vbBinaryCompare) '11 Debug.Print InStrB(1, str1, "ABC", vbTextCompare) '11 Debug.Print InStr(2, str2, "くけ", vbBinaryCompare) '8 Debug.Print InStr(2, str2, "くけ", vbTextCompare) '8 Debug.Print InStrB(2, str2, "くけ", vbBinaryCompare) '15 Debug.Print InStrB(2, str2, "くけ", vbTextCompare) '15 Debug.Print InStr(str3, "hello") '0 (※引数省略) Debug.Print InStrB(str3, "hello") '0 (※引数省略) Debug.Print InStr(4, str3, "hello", vbTextCompare) '8 Debug.Print InStrB(4, str3, "hello", vbTextCompare) '0 End Sub |
実行結果
関連記事
-
-
ユーザー定義定数(Const ステートメント)
定数を使う ユーザー定義の定数を使用するには、Const ステートメントを使って …
-
-
文字列:文字列左から指定文字数取得(Left 関数,LeftB 関数)
Left 関数・LeftB 関数 の使い方 【書式】 result_left = …
-
-
RGB 値一覧表(XlRgbColor 列挙型)
RGB 値(XlRgbColor 列挙型)一覧表 RGB 関数を使用して、出力さ …
-
-
インプットボックスを表示する(InputBox関数・InputBoxメソッド)
「InputBox関数」と「InputBoxメソッド」の違い 「InputBox …
-
-
乱数を生成する(Rnd 関数)
Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …
-
-
文字列:文字列を指定した形式に変換する(StrConv 関数)
StrConv 関数の使い方 【書式】 result = StrConv ( s …
-
-
XlThemeColor 列挙型
XlThemeColor 列挙 定数 値 内容 xlThemeColorDark …
-
-
Erase ステートメント(配列の初期化・動的配列のメモリ解放)
Erase ステートメントの使い方 【書式】 Erase myArray [, …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …
-
-
指定した値を16進数で表記した文字列に変換する(Hex 関数)
Hex 関数 の使い方 【書式】 result = Hex ( expressi …
