VBAでInstrを使用し置換前後を確認する
変更のVBAを下記に変更しました。
・見つかればカウントする変数の「nf」と、置換後見つかればカウントする変数の「nd」を参照渡しで引数にしています。
・Replace後Instrで検索し、変更後の文字列が見つかれば置換できているのでカウントします。
Private Sub MyChangeHtml(nf As Long, nd As Long)
Dim lc As Long
nf = 0
nd = 0
lc = 5
Do
If Cells(lc, 3) <> "" Then
If Cells(lc, 4) <> "" Then
If InStr(1, sUtfBuf, Cells(lc, 3), vbTextCompare) > 0 Then
nf = nf + 1
sUtfBuf = Replace(sUtfBuf, Cells(lc, 3), Cells(lc, 4), , , vbTextCompare)
If InStr(1, sUtfBuf, Cells(lc, 4), vbTextCompare) > 0 Then
nd = nd + 1
End If
End If
End If
lc = lc + 1
Else
Exit Do
End If
Loop
End Sub
変更プロシージャの呼び出し側です。
引数の戻り値を変換ファイル名の横のセルに表示します。
Range("変換ファイル名").Offset(0, 3).Clear
Range("変換ファイル名").Offset(0, 4).Clear
MyChangeHtml n1, n2
Range("変換ファイル名").Offset(0, 3) = n1
Range("変換ファイル名").Offset(0, 4) = n2
変換ファイル名の横に、削除と変更の結合したセルを作成し、その下の行に「有無」「削除」と「有無」「変更」を作成しました。
変更結果も「有無」の数と「変更」の数が同じなら正常に置換できたことになります。