10代と話して驚いたこと

エクセルのvbaにて
thisworkbookに記載のマクロを他のブックにマクロにて自動コピー出来る方法はありますでしょうか。
具体的には、thisworkbookが入っているブックを分割して新しく担当者別にファイルを作成しております。
そこでも、元のthisworkbookに記載したマクロを使用したいと考えています。
1つずつマクロを入れるには1000以上のファイルがあるため、自動コピー出来ないかと考えています。
thisworkbookには、印刷不可設定を入れています。
何か良い方法が有れば、教えてください。thisworkb

A 回答 (2件)

こんにちは



ご質問の意味がよくわかりませんけれど・・・

「ブックに記載されているマクロを、マクロでコピーしたい」ということなら可能です。
以下あたりが、参考になると思います。
http://officetanaka.net/excel/vba/vbe/

数が多いようなので、No1様の回答にあるように、一旦エクスポートしておいたものを、importメソッドで取り込むようにした方が、コピペするよりも効率的だと思います。
https://docs.microsoft.com/ja-jp/office/vba/lang …


とはいうものの、ここで質問なさっていることから推測すると、応用できないかも・・・

>ブックを分割して新しく担当者別にファイルを作成しております。
>そこでも、元のthisworkbookに記載したマクロを使用したいと考えています
「分割」とおっしゃっているのは、「必要なシートだけ残す」といったような処理ではないかと想像しますけれど、もしそうであるなら、単純にブックを複製してから不要なシートを削除すれば、標準モジュールのマクロは残るので、結果的にマクロをコピーするのと同じことになります。。
「別名で保存」や「ブックのコピー」だけで済むので、ことらの方が簡単ではないかと思います。
(シートを削除すれば、シートモジュールのマクロは削除されますけれど・・・)

>1000以上のファイルがあるため、
元ブックには1000以上のシートがあるってことなのでしょうか?
そのこと自体が、すでに操作上の人の認識数を超えているような気がしますけれど・・・
    • good
    • 0
この回答へのお礼

ありがとう

ありがとうございます。説明が下手で申し訳ありません。参考にして、やってみます。

お礼日時:2021/07/09 13:12

質問のような作業をすることがないので未検証ですが。


こちら↓のようなことで対応できるのではないでしょうか?
https://vbaexcel.slavesystems.com/vba/?p=1045
エクスポートしたマクロを、別ブックの同じモジュール名へと一括で
インポートするものだと思います。

別ブックに同じモジュール名があり、そこにマクロがあると削除して
しまうので、元ブックのモジュール名が被らないようにしてください。
    • good
    • 0
この回答へのお礼

ありがとう

ありがとうございます。
調べて再度やってみます。

お礼日時:2021/07/09 13:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A