文字列:2つの文字列を比較する(StrComp 関数)
StrComp 関数の使い方
【書式】
result = StrComp ( string1, string2, [ compare ] )
引数・戻り値
- string1,string2 ・・・ 任意の文字列・文字列式を指定します。
- compare ・・・ 文字列の比較モード(-1,0,1)を指定します。省略時は、「Option Compare ステートメント」の設定により比較モードが決まります。
値 定数 内容 -1 vbUseCompareOption Option Compare ステートメントの設定を使用して比較 0 vbBinaryCompare バイナリモードの比較 1 vbTextCompare テキストモードの比較(大文字・小文字を同一視) 2 vbDatabaseCompare Microsoft Access の場合のみ有効
- result ・・・ 文字列を比較し結果に応じて(-1,0,1,Null 値)のいずれかを返します。文字の大小関係は基本的には、ASCIIコード・JISコードの大小となります。ただし、テキストモードでは、「大文字・小文字」、「全角・半角」、「かたかな・ひらがな」はいずれも同一とみなされます。
戻り値 内容 -1 string1 は string2 未満 0 string1 と string2 は等しい 1 string1 は string2 を超える Null 値 string1 または string2 が Null 値
StrComp 関数 の使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 |
Sub Sample_StrComp() Debug.Print StrComp("abc", "123", 0) 'バイナリモードで比較(1) Debug.Print StrComp("Hello!", "Hi!", 1) 'バイナリモードで比較(-1) Debug.Print StrComp("abc", "ABC", 0) 'バイナリモードで比較(1) Debug.Print StrComp("abc", "ABC", 1) 'テキストモードで比較(0) Debug.Print StrComp("あいうえお", "アイウエオ", 1) 'テキストモードで比較(0) End Sub |
実行結果
関連記事
-
-
VBA の演算子(文字連結演算子:& 演算子 + 演算子)
文字連結演算子 文字連結演算子は、文字列の連結を行うときに使用する演算子で、「& …
-
-
VBA の演算子(論理演算子:And、Eqv、Imp、Not、Or、Xor)
論理演算子 論理演算を行うときに使用する演算子で、以下の 6 種類があります。 …
-
-
日付時刻:日付時刻から情報取得( DatePart 関数 )
DatePart 関数(日付・時刻の値から情報を取得) 【書式】 result …
-
-
文字列:文字列の空白を削除(Trim 関数, LTrim関数, RTrim関数)
Trim 関数・LTrim 関数・RTrim 関数の使い方 【書式】 <先頭と末 …
-
-
RGB 値一覧表(XlRgbColor 列挙型)
RGB 値(XlRgbColor 列挙型)一覧表 RGB 関数を使用して、出力さ …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …
-
-
指定した数値を文字列に変換する(Str 関数)
Str 関数 の使い方 Str 関数は、数値・数式を文字列に変換して返す関数です …
-
-
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)
RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …
-
-
色の設定(ColorIndex プロパティ・Colors プロパティ)
ColorIndex プロパティ ColorIndex プロパティは、指定したオ …

Comment
戻り値の意味が分かりません
未満ってなんですか
超えるってなんですか
含有とは違うのですか
文字の大小関係は、文字コードでの大小となります。
たとえば「c」と「a」を比べると以下のようになります。
result = StrComp(“c”, “a”)
この時、ASCII コードで、”c” は、99 、”a” は 97 となります
つまり、”c” > “a” となるので、result は、1 となります。