【VBA】セルの中の特定文字を探す

目次

セルの中の特定文字を探す(InStr関数)
セル内に特定文字が含まれるかどうかを調べる1(IF文 +InStr関数)
セル内に特定文字が含まれるかどうかを調べる2(IF文 + Like演算子)
指定した文字列が含まれるセルを探す(Findメソッド)
指定した文字列が含まれるセルを探す(WorksheetFunction.match)

セルの中の特定文字を探す(InStr関数)

InStr関数は、文字列内の特定の文字列を検索し、最初に見つかった文字の位置を数値の戻り値として返します。
(なかった場合は0を返します)

InStr( 開始位置, 対象文字列, 検索文字列, 比較モード )

開始位置:検索を開始する位置を指定します。省略した場合は先頭から検索します。
対象文字列:検索の対象となる文字列を指定します。
検索文字列:対象文字列のなかから検索する文字列を指定します。
比較モード:比較モードを指定します。省略した場合、vbBinaryCompareになります。
 vbUseCompareOption:
 vbBinaryCompare:バイナリで比較
 vbTextCompare:テキストで比較(大文字/小文字、全/半角 の区別なし)

 ▲目次にもどる

セル内に特定文字が含まれるかどうかを調べる1(IF文 +InStr関数)

If InStr(ActiveCell.Value, “*探したい文字 *”) <> 0 Then
 ’あった場合の処理
Else
 ’なかった場合の処理
End If

 ▲目次にもどる

セル内に特定文字が含まれるかどうかを調べる2(IF文 + Like演算子)

If ActiveCell.Value Like “*探したい文字 *” Then
 ’あった場合の処理
Else
 ’なかった場合の処理
End If

 ▲目次にもどる

指定した文字列が含まれるセルを探す(Find メソッド)

Range. Find (What:= 検索するデータ, After:= 検索開始するセル, LookIn:= 検索する対象 , LookAt:= 完全一致検索するか ,SearchOrder:= 検索の方向 , SearchDirection:= 検索の向き , MatchCase:= 大文字小文字を区別するか , MatchByte:= 半角文字と全角文字を区別するか ,SearchFormat:= 書式を検索の条件に含めるか )

ただし、Findをもちいるよりも、
可能であれば 、
処理速度が速く、画面上の表示形式が異なっていても確実に検索できる
Match をもちいたほうがよいようです。

 ▲目次にもどる

指定した文字列が含まれるセルを探す(WorksheetFunction.match)