文字列:文字列を検索してその最初の文字位置を返す(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 |
実行結果
関連記事
-
-
フォントの設定(Font プロパティ)
フォントの設定(Font プロパティ) 指定されたオブジェクトのフォント情報(F …
-
-
式を評価し、結果(真・偽)に応じた式・値を返す(IIf 関数)
IIf 関数 の使い方 IIf(アイイフ)関数は、式を評価してその結果(真・偽) …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
-
-
変数が日付型かどうかをチェックする( IsDate 関数 )
IsDate 関数の使い方 【書式】 result = IsDate( expr …
-
-
Option Compare ステートメント
Option Compare ステートメントの使い方 【書式】 Option C …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)
カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …
-
-
メッセージボックスを表示(MsgBox関数)
MsgBox関数 【書式】 result = MsgBox ( Prompt [ …
-
-
文字列:指定した文字コードに対応する文字を返す(Chr 関数)
Chr 関数の使い方 【書式】 result = Chr ( code ) 引数 …
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
