VBAでInstrを使用し検索する
削除のVBAを下記に変更しました。
・プロシージャをSubからFunctionに変更し、値を戻すことができるようにしました。
・見つかればカウントする変数の「nf」を追加
・Instrで削除するHTMLを検索
・返り値が>0ならばカウントします。
・カウント結果を戻します。
Private Function MyDelHtml() As Long
Dim lc As Long
Dim nf As Long
nf = 0
lc = 5
Do
If Cells(lc, 2) <> "" Then
If InStr(1, sUtfBuf, Cells(lc, 2), vbTextCompare) > 0 Then
nf = nf + 1
End If
sUtfBuf = Replace(sUtfBuf, Cells(lc, 2) & vbCr, "", , , vbTextCompare)
lc = lc + 1
Else
Exit Do
End If
Loop
MyDelHtml = nf
End Function
戻した結果は変換ファイル名の隣のセルに表示します。
名前を定義したセルを基準に別のセルを指定するにはOffsetを使用します。
Range("変換ファイル名").Offset(0, 1).Clear
nRet = MyDelHtml
Range("変換ファイル名").Offset(0, 1) = nRet
正常に見つかれば下のように削除するHTMLと同数になります。
何らかの原因で見つからなければ下のように削除するHTMLと数が異なります。
これで正常に動作できたかどうかチェックできるようになります。