LoginSignup
1
0

More than 5 years have passed since last update.

VBA: 複数検索可能なInStr代替プロシージャ

Posted at

調べたい文字列に対して、複数の文字列の組を検索させる

注意点

  • あくまでInStrメソッドの応用なので、部分一致検索になる
  • 完全一致はご存じの通り"="が利用可能なはず
  • また、CSVファイル向けには、その行を引数に、内部でSplitをかけるアレンジも可能(同様の方法で、条件数が可変の場合に対応できる)
  • 比較の前提としてvbStringの型一致を判定しているが、必要に応じて外してもよいはず
InStrs.bas
Public Function IncludeStrs(ByVal val As String, ParamArray strArr() As Variant) As Boolean
    Dim itemVar As Variant
    IncludeStrs = True

    For Each itemVar In strArr
        If VarType(itemVar) = vbString Then
            If InStr(1, val, itemVar) > 0 Then
                Exit Function
            End If
        End If
        DoEvents
    Next

    IncludeStrs = False
End Function
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0