大文字小文字を区別しない文字列検索、比較 よく使うサブルーチンライブラリ
vcmp.bas
vcmp.bas は、大文字小文字を区別せず、文字列を検索したり、比較するためのサブルーチンです。vba は、言語的に歴史が古く、昨今の 言語ではほとんどが持っている大文字小文字を区別しないで処理する文字列操作関数をもっていません。
その使い心地の悪さを解消するサブルーチンです。
大文字小文字を区別せずに文字列を比較する
書式 Function ig(iStr0, iStr1)
‘iStr0:比較文字列
‘iStr1:比較文字列
‘戻り:0 等しい -1: 等しくない(iStr0が小さい) 1: 等しくない(iStr0が小さい)
‘iStr1:比較文字列
‘戻り:0 等しい -1: 等しくない(iStr0が小さい) 1: 等しくない(iStr0が小さい)
使用例
If vcmp.ig(buff,work)=0 then
msgbox("buff = work")
ElseIf vcmp.ig(buff,work)<0 then
msgbox("buff < work")
Else
msgbox("buff > work")
Endi If
大文字小文字を区別せず文字列を検索
書式 Function sPos(iStr, iTrg)
‘iStr:文字列
‘iTrg:検索文字列
‘戻り:0以下: 見つからない 0以上: 見つかった位置
ig_pos の別名を実現するサブルーチンです。‘iTrg:検索文字列
‘戻り:0以下: 見つからない 0以上: 見つかった位置
使用例、
dim p
sPos = ig_pos(iStr, iTrg)
大文字小文字無視位置検索
書式 Function ig_pos(iStr, iTrg)
‘iStr:文字列
‘iTrg:検索文字列
‘戻り:0以下: 見つからない 0以上: 見つかった位置
‘iTrg:検索文字列
‘戻り:0以下: 見つからない 0以上: 見つかった位置
使用例、
Dim p
p = vcmp.ig_pos(buff,work)