ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.4025035 ExcelVBAで、ユーザーフォームを新規Bookにコピーしたい
質問者:himawarink シートをコピーして新規Bookで保存するマクロを作成しています。
このシートには「クリックするとユーザーフォームを開く」ボタンをつけているのですが、コピー先のBookにユーザーフォームをコピーすることができません。
(全て自動化したいので、両方のBookをVBEで開いてドラッグでコピーするようなことは考えていません。)
良い方法がありましたら、アドバイスください。
よろしくお願いします。
困り度:
  • すぐに回答を!
質問投稿日時:
08/05/15 21:35

回答

ANo.1 フォームをエクスポートして新しいブックにインポートすればOKです。
下はユーザーフォームのMyFormをC:\myform.frmにエクスポーとして新しいブックにインポートする例です。

Dim newBook As Workbook
ThisWorkbook.VBProject.VBComponents.Item("MyForm").Export "C:\myform.frm"
Set newBook = Workbooks.Add
newBook.VBProject.Import "C:\myform.frm"
回答者:Bonjin
種類:アドバイス
どんな人:経験者
自信:参考意見
回答日時:
08/05/17 17:30
この回答への補足この回答に補足をつける(質問者のみ)
この回答へのお礼この回答にお礼をつける(質問者のみ)