質問: o + 1 End If Next Next 後略 ```
回答: 詳しくは見ていませんが、`Patn`を初期化せずに使っているので、延々と結合されてしまっているのが原因ではないでしょうか。 `Patn`編集ループ前に初期化してあげてみてください。 ``` Patn = "" ' ←追加 For t = 1 To nameLen Patn = Patn + WorksheetFunction.Replace(namePt, t, 1, ".") + "|" Next Patn = Mid(Patn, 1, Len(Patn) - 1) ``` 追記 処理時間がかかるような場合は、DoEventsを適宜入れるようにしてください。 Excelが固まるのが防止できますし、途中で中断することも可能になりますので。 あまり入れすぎると遅くなる可能性もあるので、1つ目のループの最後あたりに入れるなどでよいかと思います。