- ベストアンサー
Excel2007VBAでsheet1のコードを新規ブックにコピーする方法は?
- Excel2007のVBAを使用して、雛形のブックのsheet1に記述されたコードを新規ブックにコピーする方法を教えてください。
- 現在、タイムカードを作成していますが、新規ブックを立ち上げるたびに雛形のブックのコードをコピーして使いたいです。
- 新規ブックに出勤退勤の打刻ができるようにするため、雛形のブックのsheet1に記述されたコードをコピーしたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>ご説明のコードをそのまま用いると、雛形ブックから : >コードのコピーができませんでした。 と言われても,間違ったコードを書いていたら正しく動作しないのは当然のナリユキです。としか,今の段階でお話し出来るネタはありません。 具体的に,どこのシートにどのような内容のマクロを作成したのですか? 「言われたとおりにしました」じゃなく,実際にアナタが書いて動かした(動かそうとした)「そのマクロ」を,ナイショにせずにキチンと漏れなく情報提供してみてください。 そういった具体的なやったことを拝見すれば,「ここが違ってますからこうしましょう」みたいに,具体的なアドバイスもまたお話しできると思います。 また言わずもがなですが,ブック名やシート名などは,間違い無く正しくアナタのひな形ブックに合わせて修正し作成していますか? そういった「事実に即すべき箇所」はこちらでは当然判りませんので,現物を持っているアナタがご自身の目でキチンと確認し,ご自分の手で作成して貰わないとなりません。 >VBAを作成する上での「一般常識」が欠けている >と思いますので、その辺もご教示いただければ幸いです。 あまりに漠然としたご質問なのでちょっと回答できませんが,敢えて言うなら「動かないよ-できないよー」で終わるんじゃなく,ご自分で書いたマクロをご自分の手でキチンと「デバッグ」できるように,スキルアップしてください。 ネットで「Excel vba デバッグ」などのキーワードでちょっと検索してみると、沢山ヒットしますので参考にしてみてはいかがでしょう。
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
現在の方法: >最初にタイムカードの雛形を作成しておき、 >Addメソッドを使用することによって新規ブックを立ち上げます。 変更後の方法: workbooks("ひな形book.xlsm").worksheets("ひな形シート").copy activeworkbook.saveas filename:="新しいブック名.xlsm" とすることで,マクロを埋め込んだひな形シートを,コードと共に複製した「新規ブック」を生み出すことが出来ます。 #補足 マクロでマクロを操作する(取り付ける,削除する)ことは,もちろんできる方法はあります。が,一般にそれはそのままマクロウィルスの手技に通じるので,こちらのような公開の質問相談掲示板ではあまり触れない話題です。 またそもそも一般のエクセルでは,そういう操作が出来ないようにデフォルトで設定されています。
お礼
keithin様 ご回答ありがとうございます。 またお礼が遅くなり恐れ入ります。 補足の質問につきましてもご確認 くだされば幸いです。
補足
keithin様のアドバイスに関し、 以下の2点についてご説明がいただければ幸いです。 1.ご説明のコードをそのまま用いると、雛形ブックから 新規ブックを立ち上げたときに雛形ブックの「sheet1」の コードのコピーができませんでした。 2.「#補足」にございますようにそもそも 「sheet1」のコードのコピーは通常できない。 またそういことはしてはいけない。 私は独学でVBAプログラムを作成しています。 VBAを作成する上での「一般常識」が欠けている と思いますので、その辺もご教示いただければ幸いです。
お礼
keithin様 たびたびのご回答ありがとうございます。 また中途半端な質問で戸惑わせてしまい恐縮です。 >具体的に,どこのシートにどのような内容のマクロを作成したのですか? 確かにシートは作成しましたが、現在のところ質問のポイントを 自分でも得ていません。 今の段階でコードを書いてしまうと何を質問しているのか、 回答者の方を困らせてしまうと思います。 従って、keithin様がおっしゃるようにいま一度 「自分の手で動かし」てみて、質問のポイントを明らかに していきたいと思います。 アドバイスありがとうございました。