• ベストアンサー

Excelマクロ

50枚くらいの別々のExcelスプレッドシート(別ブック)に入っている様々な文字列を変更したいと思っています。 (例えば、rose→daisy, pink→red, apple→orangeなど) この場合、この一連の「置換」を使った操作をマクロに記録させ、そのマクロを別のブックに入っているスプレッドシートにも適用することはできますか? 聞いたところでは、「マクロの記録」で記録されたマクロは、VBAで編集できるとのことなのですが、 そのVBAは、エクセルのどこから取得することができるのでしょう? そのVBAを別のスプレッドシートに都度コピーペーストすることにより、あるスプレッドシートに記録されたマクロを他のスプレッドシートに記録することはできますか? また、この方法がワークしない場合、別のやり方で目的を達成することはできますでしょうか? どなたかどうぞお知恵をお授け下さい。宜しくお願いいたします。

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

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

マクロは、個々のブックに記述しなくても、個人用マクロブックとか、今回の例では、対象ファイル名と、置換文字列対照表のリストを有するブックを作って、そこから別のブックを対象に処理する事ができます。 参考URLをご覧になって、まず自動記録を始めてみてはいかがでしょうか。ただ、本気でやる気があるのなら、入門書を一冊購入する事をお勧めします。始めてみてご不明の事があれば再度質問すれば、回答が付くと思います。

参考URL:
http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_020.html
noname#66789
質問者

お礼

ご回答ありがとうございます。おかげさまで解決いたしました。

その他の回答 (1)

回答No.2

エクセルのバージョンによって違いますが、2003までならfilesearchを使って、いったん置換したいエクセルファイルをリストアップします。 その後、それぞれのエクセルファイルの全シートに対して置換を行うというマクロを組めばできます。 エクセルのバージョン、置換したいセルの範囲、置換したい語数を示していただければ、回答しやすいです。

noname#66789
質問者

お礼

ご回答ありがとうございます。おかげさまで解決いたしました。

関連するQ&A