構文
StrComp(String1 , String2 [, compare])
String1 ・・・ 比較したい文字列1 [省略不可] String2・・・ 比較したい文字列2 [省略不可] compare・・・比較するモード [省略可]
戻り値・・・・Variant(内部的には文字列型String)
戻り値・・・・Variant(内部的には文字列型String)
String1とString2を比較する関数です。
compareは以下の定数で指定します。
定数 | 値 | 内容 |
vbBinaryCompare | 0 | バイナリモードで比較(大文字と小文字を区別する) |
vbTextCompare | 1 | テキストモードで比較(大文字と小文字を区別しない) |
vbDatabaseCompare | 2 | データベース内の情報で比較(Microsoft Accessのみ) |
戻り値は以下です。
内容 | 戻り値 |
String1 は String2 未満 | -1 |
String1 と String2 は等しい | 0 |
String1 は String2 を超える | 1 |
StrComp関数のサンプルコード
’バイナリモードで比較し厳格な比較を行う事や、テキストモードで比較し緩い比較が可能です。 Public Sub test_StrComp() '■バイナリモード(大文字小文字区別で比較する)=一致しない If StrComp("ABCDE", "abcde", vbBinaryCompare) = 0 Then MsgBox "一致しました" End If '■テキストモード(大文字小文字区別で比較する)=一致する If StrComp("ABCDE", "abcde", vbTextCompare) = 0 Then MsgBox "一致しました" End If '■バイナリモード(大文字小文字区別で比較する)=一致しない If StrComp("ABCDE", "ABCDE", vbBinaryCompare) = 0 Then MsgBox "一致しました" End If '■テキストモード(大文字小文字区別で比較する)=一致する If StrComp("ABCDE", "ABCDE", vbTextCompare) = 0 Then MsgBox "一致しました" End If End Sub
注意点
- ワイルドカードでの比較(部分一致)は行えません。単純に一致しません。
Instr関数を使用し文字列内に指定文字が、含まれるかどうかチェックしましょう。
VBAでIE操作「Javascriptのonclick要素を抜き出す」処理をパーツ化する
関連記事
指定した文字列の中から指定文字を置換する【Replace関数】【VBA入門】
指定した文字位置を判断する【Instr関数】【ExcelVBA】
コメント