StrComp関数
StrComp関数は、VBA関数の中で文字列操作関数に分類される関数です。
目次
StrComp関数とは
StrComp関数は、文字列比較の結果を表すバリアント型 (内部処理形式 String の Variant) の値を返します。
| 構文 | StrComp(string1, string2[, compare]) |
|---|
| 引数 | 省略 | 説明 |
|---|
| string1 | × | 任意の文字列式を指定します。 |
| string2 | × | 任意の文字列式を指定します。 |
| compare | ● | 文字列比較のモードを指定する番号を設定します。名前付き引数 compare が Null 値の場合は、エラーが発生します。compare を省略すると、Option Compare ステートメントの設定により比較モードが決まります。 |
引数 compare
| 定数 | 値 | 説明 |
|---|
| vbUseCompareOption | -1 | Option Compare ステートメントの設定を使用して比較を行います。 |
| vbBinaryCompare | 0 | バイナリ モードの比較を行います。 |
| vbTextCompare | 1 | テキスト モードの比較を行います。 |
| vbDatabaseCompare | 2 | Microsoft Access の場合のみ有効。データベースに格納されている設定に基づいて比較を行います。 |
戻り値
| 内容 | 戻り値 |
|---|
| string1 は string2 未満 | -1 |
| string1 と string2 は等しい | 0 |
| string1 は string2 を超える | 月 |
| String1 または string2 は Null 値 | Null 値 |
StrComp関数のサンプルコード
次の例は、StrComp 関数を使って、文字列を比較した結果を返します。3 番目の引数に 1 を指定すると、文字単位で比較します。3 番目の引数に 0 を指定するか省略すると、ビット単位で比較します。
Sub sample()
Dim MyStr1, MyStr2, MyComp
MyStr1 = "ABCD": MyStr2 = "abcd" ' 変数を定義します。
MyComp = StrComp(MyStr1, MyStr2, 1) ' 0 を返します。
MyComp = StrComp(MyStr1, MyStr2, 0) ' -1 を返します。
MyComp = StrComp(MyStr2, MyStr1) ' 1 を返します。
End Sub
実行結果
解説
文字列操作関数一覧
| 関数名 | 内容 |
|---|
| Asc | 文字列内にある最初の文字の文字コードを返します。 |
| AscB | 文字列内にある最初のバイトコードを返します。 |
| AscW | 文字列内にあるISOコードの文字を返します。 |
| Chr | 指定したコードに対応する文字を返します。 |
| ChrB | 指定したコードに対応するバイトデータを返します。 |
| ChrW | 指定したコードに対応するISOの文字を返します。 |
| Format | 式を指定した書式に変換します。 |
| Hex | 指定した文字列を16進数で返します。 |
| InStr | 検索対象文字列の指定した位置から指定した文字列を検索し、最初に見つかった文字位置を返します。 |
| InstrB | 検索対象文字列の指定したバイト位置から指定した文字列を検索し、最初に見つかったバイト位置を返します。 |
| LCase | 大文字のアルファベットを小文字に変換します。 |
| Left | 文字列の左端から指定した文字数分の文字列を抽出します。 |
| LeftB | 文字列の左端から指定したバイト数分の文字列を抽出します。 |
| Len | 文字列の文字数を返します。 |
| LenB | 文字数のバイト数を返します。 |
| Ltrim | 文字列の先頭のスペースを削除した文字列を抽出します。 |
| Mid | 文字列の指定した位置から指定した文字数分を抽出します。 |
| MidB | 文字列の指定したバイト位置から指定したバイト数分を抽出します。 |
| Oct | 指定した文字列を8進数で返します。 |
| Right | 文字列の右端から指定した文字数分の文字列を抽出します。 |
| RightB | 文字列の右端から指定したバイト数分の文字列を抽出します。 |
| Rtrim | 文字列の末尾のスペースを削除した文字列を抽出します。 |
| Space | 指定した数のスペースを返します。 |
| Str | 数式の値を文字列に返します。 |
| StrComp | 文字列を比較した結果を返します。 |
| StrConv | 文字列を変換した結果を返します。 |
| String | 指定した文字コードに対応する文字を指定した文字数だけ並べた文字列を返します。 |
| Trim | 文字列の先頭と末尾のスペースを削除した文字列を抽出します。 |
| Ucase | 小文字のアルファベットを大文字に変換します。 |
| Val | 文字列を数値に変換します。 |

