No.008
別のブックにマクロをコピーしたい
2003/2007/2010/2013
マクロを別のブックにコピーするには、Visual Basic Editor(以下VBE)で行います。
なるべく初心者の方でもわかりやすい手順でご案内します。
今回、コピー元のマクロを持つブック Book1.xlsm と、マクロコピー先のブック Book2.xlsx とで行います。
- コピー元のマクロを持つブックと、コピーしたいブックを両方開きます。
- コピー元のマクロを持つブックをアクティブにしておきましょう。(任意)
- ショートカット キー「Alt」+「F8」、または[開発]タブ-[コード]グループ-[マクロ]ボタン、もしくは[表示]タブ-[マクロ]グループ-[マクロの表示]ボタンをクリックします。
- 表示された[マクロ]ダイアログ ボックスでコピー元のマクロを選択し、[編集]ボタンをクリックします。
- 表示された Visual Basic Editor(以下VBE) には、右側に今回コピーするマクロのコードが表示され、左上の階層構造(プロジェクト エクスプローラー)には、[標準モジュール]フォルダー配下にうっすらグレーに選択されているモジュールを確認します。これがコピー元のマクロです。
(VBEのタイトル バーの最後に表示されているものと同じ)
- 階層構造では、「VBAProject」の次のかっこ内にブック名が表示されています。
そこにコピー元とコピー先の2つのブック名が縦に並んでいるのを確認します。
このとき上下の順番は問題ありません。
- 手順5で確認した、グレーのモジュールを、コピー先ブックの方にドラッグします。
このときドラッグの場所はコピー先ブック配下であればどこでも構いません。
- コピー先ブックの階層の[標準モジュール]フォルダー配下に同じモジュールがコピーされたことを確認します。
同じ名前のモジュールがコピー先ブックに存在した場合、同じ名前の後に「1」が付いた名前となります。
確認後VBEはそのまま閉じます。 - Excelに戻りましたら、コピー先ブックで[名前を付けて保存]を行い、ファイルの種類をマクロ有効ブックにして保存します。
少し長い手順となりましたが、操作は簡単VBEを開いてドラッグするだけです。
VBEに慣れていない方は、ゆっくり操作してください。