- ベストアンサー
エクセルでの文字置き換え
みなさんこんにちは。 質問ですが、編集→置き換えではなく、VBAで同様の 操作をしたいのですが、どの様に記述すればよいのでしょうか? また、マクロの記録を使って、同様の処理をした場合との処理速度の差はあるのでしょうか? 置き換えたい文字が多くある為、編集→置き換えは面倒くさいので・・・
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>VBAで同様の操作をしたいのですが VBAで、 (1)セルの値を読み込み (2)読み込みんだ値に対して、VBAの関数で文字列を置換 (3)置換した値をセルに書き込み と言うことでしょうか? VBAはインタプリタで動作しているので、基本的には遅いです。 次のように、置換の処理を並べた方が簡単で早いと思いますが、 Selection.Replace What:="やまだ", Replacement:="たなか", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="さとう", Replacement:="すずき", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False ・ ・ ・
その他の回答 (1)
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 同じ文字の置換を、広範囲に実行するなら、編集→置換の方が当然速いです。 編集→置換操作をマクロ記録してみてはいかがですか? そして、置き換えたい文字数分ループさせればいいと思います。
お礼
maruru01さん有難うございました。 面倒なのは、マクロに記録する所だけですのでmaruru01さんのやり方でやってみます。
お礼
rotesKometさん有難うございます。 >VBAはインタプリタで動作しているので、基本的には遅いです。 そうですか。勉強になりました。