• 締切済み

エクセル2013VBAブックコピーでボタンリンク

エクセル2013のVBAの事で質問です。 あるファイルをSaveCopyAsでコピーして、コピーしたファイルのシートをアクティブシートのみ残して全削除するようにした(その他もシート内で色々処理)のですが、新しく作成したファイルのマクロを登録してあるボタンがコピー前のファイルのマクロにリンクされてしまいエラーを起こしました。 今まで他のファイルでSaveCopyAsを使ってコピーしていましたが、特にそのようなこともなく使えていました。 どんな原因または修正法が考えられるでしょうか? すいませんが、よろしくお願いいたします。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

一例として。 ボタンに登録するマクロを他のシートのボタンと共有しようと思いついて、標準モジュールに準備してしまったなどで、ご相談の状況が発生する事が考えられます。 一つの方法としては >新しく作成したファイルのマクロを登録 その「登録されているマクロ」を、元のブックに残さないようにします たとえばボタンとしてActiveXコントロールのコマンドボタンを使用、そのマクロを(「アクティブシート」の)シートオブジェクト(シート名タブを右クリックしてコードの表示を選んで現れるシート)に記載します。

hinoki24
質問者

お礼

どうもありがとうございます。 コントロールのコマンドボタンでやってみたところ、シートのコピーなどの動作状況がなぜか標準モジュールの時と違う動作になり、もう一度見直してみたところ、vbaを改造したときに、指定の仕方を変更すべきところが、ThisWorkbookのままであったため前のファイルにリンクされていたようでした。 そのあたりを見直したら修正されました。 お手数をおかけしました。