- ベストアンサー
マクロ 他のブックで使うとき保存したファイル開かな
自分はマクロ初心者で先日初めてマクロ有効のエクセルファイルを作りました。作ってボタン(押したらマクロが実行されるもの)を用意し、満足できる出来になったのはいいのですが、そのボタンをコピーして他のブックにはりつけ、ボタンを使おうとしたら、エラーになってしまいます(○○○というブックの名前が変更されたか、消された可能性があります) その指定のブックを開いた状態でボタンを使えばうまく動きます。 どうすれば、その指定のブックを開かずともマクロ月のボタンを使えるでしょうか? ちなみにエクセルのバージョンは最新で、自分以外のパソコンでも同じことが起きるのでバグではないと思います。 宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- kon555
- ベストアンサー率51% (1845/3565)
もしかして「ボタン」というのは挿入した図形にマクロ登録してある状態の事ですか? もしそうなら、別ブックにコピーしただけでは使えません。元々のブックのマクロが登録された状態になります。 貴方の要望がしっかりとは把握できてないので、もし的外れならごめんなさいなのですが「図形やマクロのコードをコピーする」のではなく「マクロブック自体をコピー、または名前をつけて保存で複製する」と、図形とマクロの紐付けが維持されたままマクロブックを増やせます。 そこから適宜改造した方が結果的に早いと思いますよ。
>>ボタンの紐づきを一つ一つ変更する以外に改善策はありますか? 1つ1つって、、、そんなにボタンが有るのですか?w どうやってボタンを作ったのかによって対処方法は違いますが1つ1つやらなくてはダメでしょうね。 [開発]タブ⇒[挿入]⇒[ActiveXコントロール]でボタンを作ったのなら オブジェクト名が初期値になってしまっているので、1つ1つソースに合わせたボタン名にする必要が有ります。 あとは移動先へボタンをコピー、ソースをコピーではなくて、 ボタンのあるシートごと移動先のExcelへ移してはどうですか? シートにソースが紐付いているのならソースも自動で移りますよ。 思うんですけど。。。。 ①マクロを組んだExcel ②移植したい先のExcel ②へ①の一部をもっていくのではなくて ①へ②の必要な部分を移植すれば解決なんじゃないですか?
そりゃダメでしょ。 自分でVBE(Alt + F11で開く画面)でソースを書いたのですよね? そのソースは、シートかブックに紐付いています。左のバーを見ると何に紐付いているか解ります。 貴方はボタンだけ他のエクセルにコピーして、ソースをコピーしていない状態です。ボタンは有ってもソースが無いのだから動くはずが無いです。 ソースをコピーする必要が有りますし、 ボタンの作り方によっては、複製するとオブジェクト名が初期値に戻るのでそれを合わせる必要が有ります。
補足
ありがとうございます!ソースもコピーしてみたのですが、改善しませんでした。 おそらく元の方のブックのボタンをコピーしたため、元の方のブックのソースと紐づいてしまっているせいだと思います。ボタンの紐づきを一つ一つ変更する以外に改善策はありますか?