
No.2ベストアンサー
- 回答日時:
●コピーの方法をもう少し詳しく書くと、
(1)まずUserForm1(ユーザーフォームを挿入した時のデフォルトのオブジェクト名)は完成したフォームとします。
(2)UserForm1を選択して、フォーム上の何も無い所を右クリック、すべて選択。
(3)コントロールのある所にマウスを移動し、右クリック、コピー。
(4)次にユーザーフォームを挿入(UserForm2が挿入されたとします)
(5)UserForm2を選択して、フォーム上の何も無い所を右クリック、貼り付け。
これでできるように思いますが・・・(Excel2000、Excel97で確認)
●エクスポートの方法としては、
(1)まずプロジェクトエクスプローラを表示しておきます。
(2)プロパティウインドウも表示しておきます。(表示→プロパティウインドウ)
(3)プロジェクトエクスプローラでUserForm1を選択。
(4)右クリックし、ファイルのエクスポートを選択。
(5)どこかのフォルダに保存します。(UserForm1.frmで保存したとします)
(6)UserForm1のプロパティウインドウのオブジェクト名を例えばUserForm1aに変えます。
(7)プロジェクトエクスプローラで右クリックし、ファイルのインポートを選択。
(8)保存したUserForm1.frmを選択。開くボタンでインポートされます。
(9)プロパティウインドウで、インポートされたユーザーフォームのオブジェクト名を例えばUserForm1bに変えます。
以上で同じフォームが2つできたと思いますが・・・(これもExcel2000、Excel97で確認)
今度はうまくいきました。
まだまだ未熟者のため、きちんと操作できてませんでした。
わからない事が出てきたら、また質問させて下さい。
本当にありがとうございました。
No.1
- 回答日時:
>エクセルのVBでユーザーフォームをコピーしたいのですが。
『VBEのデザインモードでコピー』として書きます。(マクロを実行することによってフォームをコピーしたい?)
コピーするなら、新しいユーザーフォームを挿入しておき、元のフォームを選択し、何もないところで右クリック、『すべて選択』でコントロールをコピーし新しいフォームに貼り付ければ1回の処理で済みます。ControlSourceは当然、個別に設定しなおします。
または、
(1)プロジェクトエクスプローラでコピーしたいフォームを選択し、右クリックし『ファイルのエクスポート』
(2)再度右クリックし『ファイルのインポート』で元のフォームを選択
ではダメでしょうか。ただし、同一ブックに同一名のフォームを作ることになるので、一時的に元のフォームのオブジェクト名を変更して(2)を実行することになります。
Excel2000で確認済です。ご参考に。
さっそくのお答えありがとうございます。
『すべて選択』の方法を試してみたのですが、コピーはできましたが、
新しいユーザーフォームへ貼り付けできません。
なぜでしょうか?
『プロジェクトエクスプローラ』の方法は、ファイル選択画面が出てきた後、どうしたらいいかわかりません。
教えていただけますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) マイクロソフト アクセス2021のフォームビュー作成でレイアウトを帳票形式から単票形式にあとから変更 1 2023/03/03 10:56
- Visual Basic(VBA) Excel のユーザー定義関数でソルバーが動作しない 1 2022/09/05 19:51
- Excel(エクセル) コントロールにリンクするセルが選択されない 3 2022/06/12 14:37
- Word(ワード) office 2021へ自分用のクイックアクセスとマクロをコピーしたい 2 2023/03/11 21:15
- Excel(エクセル) 条件付き書式を使ってユーザー定義。「数字のみ」も「数字+アルファベット」も認識させたい。 2 2022/05/28 07:22
- サーバー active directory のユーザをローカルで使いたい 1 2023/07/22 07:40
- Excel(エクセル) エクセルの書式設定の表示形式で設定した文字を文字列としてコピーしたい 1 2022/12/21 10:41
- Access(アクセス) アクセス 意図せずサブプロシージャを移動してしまうのを止めたい 1 2022/09/02 09:19
- Access(アクセス) Accessに関する質問です。 クエリーQ出勤 からフォームF出勤を作成 フォームは分割フォームで作 1 2023/05/26 08:57
- Access(アクセス) Vba Userformを前面に出すについて 3 2022/04/15 12:29
このQ&Aを見た人はこんなQ&Aも見ています
-
【Excel VBA】ユーザフォームを同じブック内で複製できますか?
Visual Basic(VBA)
-
ExcelVBAで、ユーザーフォームを新規Bookにコピーしたい
IT・エンジニアリング
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
-
4
UserForm1.Showでエラーになります。
工学
-
5
エクセルのユーザーフォームをコピーしたい。
Excel(エクセル)
-
6
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
7
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
8
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
9
2画面表示でのVBAのボタン押下後のform表示の位置
Excel(エクセル)
-
10
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
11
VBAのテキストボックスに文字列を貼り付ける方法
Access(アクセス)
-
12
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
13
標準モジュール、フォームを別のブックにコピーするには?
Excel(エクセル)
-
14
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
15
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
16
ユーザーフォームに入力したデータを保持する方法
Visual Basic(VBA)
-
17
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
18
VBAでユーザーフォームにセル値を表示させるには
Visual Basic(VBA)
-
19
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
20
excelのInitializeイベントとActivateイベントについて
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ユーザーフォーム上に現在日時...
-
ExcelVBAのユーザーフォームの...
-
VBAでユーザーフォームを再表示...
-
フォームウィンドウを最前面に...
-
オブジェクト(コントロール)...
-
ACCESSのフォーム、開くんです...
-
コントロールの存在確認
-
Microsoft Formsの「個人情報や...
-
VBA コンボボックスとテキスト...
-
VBAのテキストフォームの折り返...
-
C#でボタンクリックをキャンセル
-
クリックするたびに、フォーム...
-
[ExcelVBA] Application.Dialog...
-
VB.NETでフォームロード中のエ...
-
クリックイベントなのに、2回ク...
-
Hideについて(.NET)
-
エスケープキーを押して、フォ...
-
エクセルのVBAでユーザーフォー...
-
Userformを閉じて開く時、一瞬...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
Microsoft Formsの「個人情報や...
-
クリックイベントなのに、2回ク...
-
ユーザーフォームのテキストボ...
-
ユーザーフォーム上に現在日時...
-
ACCESSのフォーム、開くんです...
-
エクセルのチェックボックスの...
-
エクセルVBAのフォームを最...
-
VB.NETでフォームロード中のエ...
-
EXCEL VBA ユーザーフォームの...
-
VBA(エクセル)のユーザー...
-
【Excel VBA】ユーザフォームを...
-
Hideについて(.NET)
-
(Excel+VBA)ユーザーフォームの...
-
モーダルフォームとモードレス...
-
VBA コンボボックスとテキスト...
-
アクセス2013 フォームが...
おすすめ情報