サイトについて      連絡先   検索

VBA StrComp 関数

はじめに

Excel VBA マクロの StrComp 関数を紹介します。

StrComp 関数は、文字列を比較します。大小や等しいかを比較できます。

文字列をソートするときに使用します。

構文

StrComp(文字列1, 文字列2)
文字列1文字列2を比較した結果を返します。

StrComp(文字列1, 文字列2, 比較モード)
比較モードで大文字と小文字を区別するか指定できます。

引数「文字列1」文字列を指定します。
引数「文字列2」文字列を指定します。
引数「比較モード」省略できます。大文字と小文字を区別して比較するかを指定します。
戻り値の型数値型 (Integer)

引数「比較モード」

単位 説明
vbBinaryCompare (既定)「大文字と小文字」、「半角と全角」、「ひらがなとカタカナ」を区別する。
vbTextCompare区別しない。

解説

文字列が同じかどうかは = や <> で比較できます。

StrComp 関数で比較した結果は次の値を返します。

結果 比較
-1文字列1 < 文字列2
0文字列1 = 文字列2
1文字列1 > 文字列2
Null文字列1 か 2 が Null

自作のソートアルゴリズムを使うときなどに使用できます。

使用例


Dim i As Integer

i = StrComp("あ", "い")
Debug.Print (i) ' -1

i = StrComp("あ", "あ")
Debug.Print (i) ' 0

i = StrComp("い", "あ")
Debug.Print (i) ' 1

i = StrComp("あいうえお", "アイウエオ", vbBinaryCompare)
Debug.Print (i) ' -1

i = StrComp("あいうえお", "アイウエオ", vbTextCompare)
Debug.Print (i) ' 0