
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・エンジニアリング
-
UserForm1.Showでエラーになります。
工学
-
-
4
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
5
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
6
エクセルのユーザーフォームをコピーしたい。
Excel(エクセル)
-
7
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
8
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
9
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
10
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
11
ユーザーフォームをホイールでスクロールする方法(Excel2000VBA)
Excel(エクセル)
-
12
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
13
VBA(エクセル)のユーザーフォームの固定
Visual Basic(VBA)
-
14
VBAのテキストボックスに文字列を貼り付ける方法
Access(アクセス)
-
15
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
16
VBAでユーザーフォームにセル値を表示させるには
Visual Basic(VBA)
-
17
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
18
2画面表示でのVBAのボタン押下後のform表示の位置
Excel(エクセル)
-
19
Vba UserFormを前面に出す方法を教えてください
Visual Basic(VBA)
-
20
エクセルVBAでオプションボタンを無効にする方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
VBAでユーザーフォームを再表示...
-
エクセルVBA フォーム上でOnkey...
-
エクセルのチェックボックスの...
-
モードレスでユーザーフォーム...
-
ACCESSのフォーム、開くんです...
-
VBA コンボボックスとテキスト...
-
VB.NETでフォームロード中のエ...
-
VBAでコントロールの数をカウン...
-
EXCEL ユーザーフォームのタイ...
-
VBA フォームに入力された...
-
【VBAユーザーフォームで閉じる...
-
【Excel VBA】ユーザフォームを...
-
Formサイズの最小値
-
EXCEL VBA ユーザーフォームの...
-
ユーザーフォームのコピー?
-
EXCEL Form モードレスで開いて
-
テキストボックスの番号の取得
-
MDI親フォームで子フォーム開放...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
VBAでユーザーフォームを再表示...
-
Form_Load と Form_Activate の...
-
ユーザーフォームのテキストボ...
-
Microsoft Formsの「個人情報や...
-
モーダルフォームとモードレス...
-
クリックイベントなのに、2回ク...
-
ACCESSのフォーム、開くんです...
-
VBA(エクセル)のユーザー...
-
Hideについて(.NET)
-
エクセルVBAのフォームを最...
-
ユーザーフォーム上に現在日時...
-
VB.NETでフォームロード中のエ...
-
(Excel+VBA)ユーザーフォームの...
-
フォームウィンドウを最前面に...
-
アクセス2013 フォームが...
-
コントロールの存在確認
-
Access VBA コントロールの参照...
-
ブックをCloseまたはQuitで閉じ...
おすすめ情報