• ベストアンサー

エクセルのマクロでユーザーフォムの・・・

保存してあるエクセルファイルAにユーザーフォーム1と標準モジュールが入っています。 エクセルファイルBにユーザーフォーム2が入っています。 ファイルBのユーザーフォーム2をファイルAにコピーいたいのですが、手動ではエクスポト・インポートで出来ますが、マクロでやる方法はありませんか? m(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

マクロでやっても、エクスポートしてインポートする方法になると思います。こんな感じです。 Sub test() Workbooks("ファイルB.xls").VBProject.VBComponents.Item("ユーザフォーム2").Export "C:\ユーザフォーム2.frm" Workbooks("ファイルA.xls").VBProject.VBComponents.Import "C:\ユーザフォーム2.frm" End Sub 確かに動くのは動くのですが、セキュリティをかなりゆるめなければならないです (Office2007だと「VBAプロジェクト オブジェクトモデルへのアクセスを信頼する」というチェックボックスもオンにしないと動きません)。マクロウィルスの対策ということもあるでしょうが、VBAソースをマクロでいじるというアプローチはもうとれなくなりつつあるような気がします。

nakai_dayo
質問者

お礼

ありがとうございました。 早速やってみます。

関連するQ&A