VBA 2つの文字列を比較するStrComp関数

スポンサーリンク
スポンサーリンク

StrComp 【ストリングコンペア】関数

2つの文字列を比較するには、StrComp 【ストリングコンペア】関数を使用します。

StrComp 【ストリングコンペア】関数の書式

[]内は省略可能です。
StrComp(String1,String2[,Compare])
【戻り値】 バリアント型 (内部処理形式 String の Variant)


設定値(引数)の説明

  • String1【ストリングワン】(必須)
    比較する文字列を指定します。
  • String2【ストリングツゥ】(必須)
    比較するもう一方の文字列を指定します。

    比較した結果戻り値
    String1はString2未満-1
    String1とString2は等しい0
    String1はString2を超える1

    StrComp【ストリングコンペア】関数で文字列を比較するとき、引数Compare【コンペア】にvbBinaryCompare(バイナリモード)が指定されている場合は、文字コードの順番。vbTextCompare(テキストモード)が指定されているときは、50音やアルファベットの順番を比較することで文字列の違いを判断しています。

  • Compare【コンペア】(省略可)
    文字列を比較するモードを指定します。vbCompareMethod列挙型の定数または、値で指定します。省略した場合は、vbBinaryCompare(バイナリモード)が指定されます。
vbCompareMethod列挙型の定数
定数内容
vbBinaryCompare
【ブイビーバイナリコムペール】
0バイナリモードで比較
vbTxetCompare
【ブイビーテキストコムペール】
1テキストモードで比較

※バイナリモード:完全に一致するかを比較
※テキストモード:大文字/小文字、全角/半角、ひらがな/カタカナの区別なしに比較

A1セルとB1セルに入力されている文字列が等しいか判定するコード例

Sub 比較()
Dim string1 As String
Dim string2 As String
string1 = Range("A1")
string2 = Range("B1")
If Not StrComp(string1, string2) = 0 Then
MsgBox "文字列は等しくありません。"
Else
MsgBox "文字列は等しいです。"
End If
End Sub

以上で、StrComp【ストリングコンペア】関数についての解説を終了します。ありがとうございました。

文字列関数一覧表

文字列関数の一覧表です。
関数名のリンクで詳細ページが開きます。
関数内容
Formatデータの表示書式を変換
Left文字列の左端から文字列の一部分を取り出す
Right文字列の右端から文字列の一部分を取り出す
Mid文字列の指定した一部分を取り出す
LeftB文字列の左端からバイト数で文字列の一部分を取り出す
RightB文字列の右端からバイト数で文字列の一部分を取り出す
MidB文字列の指定位置からバイト数で文字列の一部分を取り出す
Len文字列の長さを取得する
LenB文字列のバイト数を取得する
ChrASCIIコードに対応する文字を取得する
Asc文字に対応するASCIIコードを取得する
StrConv文字の種類を変換する
LCaseアルファベットの大文字を小文字に変換
UCaseアルファベットの小文字を大文字に変換
LTrim文字列の先頭にあるスペースを削除する
RTrim文字列の末尾にあるスペースを削除する
Trim文字列の先頭と末尾のスペースを削除する
Replace文字列を置換えする
Spaceスペースを追加する
String文字を指定した数表示する
StrComp2つの文字を比較する
InStr文字を文字列の先頭から検索する
InStrRev文字を文字列の末尾から検索する

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク