• ベストアンサー

エクセルでの文字置き換え

みなさんこんにちは。 質問ですが、編集→置き換えではなく、VBAで同様の 操作をしたいのですが、どの様に記述すればよいのでしょうか? また、マクロの記録を使って、同様の処理をした場合との処理速度の差はあるのでしょうか? 置き換えたい文字が多くある為、編集→置き換えは面倒くさいので・・・

質問者が選んだベストアンサー

  • ベストアンサー
回答No.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  ・  ・  ・

NS500R
質問者

お礼

rotesKometさん有難うございます。 >VBAはインタプリタで動作しているので、基本的には遅いです。 そうですか。勉強になりました。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 同じ文字の置換を、広範囲に実行するなら、編集→置換の方が当然速いです。 編集→置換操作をマクロ記録してみてはいかがですか? そして、置き換えたい文字数分ループさせればいいと思います。

NS500R
質問者

お礼

maruru01さん有難うございました。 面倒なのは、マクロに記録する所だけですのでmaruru01さんのやり方でやってみます。

関連するQ&A