![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
テーブルには適当なデータが入っています。
フォーム1を作り、コマンドボタンを1個だけ設置して、フォーム2を開くようにするために
Private Sub コマンド0_Click()
DoCmd.OpenForm Form_フォーム2.Name
End Sub
としました。
フォームはテーブルをレコードソースとしています。
フォーム2のモジュールに
Private Sub Form_Current()
Debug.Print "Form_Current"
End Sub
Private Sub Form_Open(Cancel As Integer)
Debug.Print "Form_Open"
End Sub
としたのですが、結果は
Form_Open
Form_Current
Form_Open
Form_Current
になります。
よって、二つのイベントの中にいくつかのプロシージャーが入っているのですが
2回ずつ実行されてしまい、求めている結果と異なってしまいます。
これを回避する方法はありますか?
どうしてもフォーム1のコマンドボタンを押して、フォーム2をひらきたいのです。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
>DoCmd.OpenForm Form_フォーム2.Name
だと二回発生しますね。
クラスとしてのフォーム2の関係から?のような気がしますが
残念ながらスキルを持ち合わせていません。
DoCmd.OpenForm "フォーム2"
なら1回だけでした。
No.2
- 回答日時:
追伸
フォーム2 を閉じた状態で、イミディエイトウィンドウで
?フォーム2.name
とすると、やはりイベントが発生します。
Msgbox "" を加えて置くとと出てきます。
この場合にはフォームは開かれていない(目には見えない)ように感じますが
内部的?に一旦開かれているようです。
なので、Docmd.Openform Form_フォーム2.Name とした場合には
Form_フォーム2.Name で仮オープン?(一回目)して名前を取得
その後、
Docmd.OpenForm フォームの実名(二回目) のようになるという事の様です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- Visual Basic(VBA) フレームワーク「4.8.1」で、[Sub Main]が動かない。助けて下さい 3 2022/11/14 15:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
ACCESSでコントロールソースの変更
Access(アクセス)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
-
4
Access レコード移動時イベントでサブフォーム
Access(アクセス)
-
5
どこにもフォーカスを当てたくない
Access(アクセス)
-
6
Accessを開きなおすとテキストボックスの値がエラー#Name?になる
その他(データベース)
-
7
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
-
8
Form_Load と Form_Activate のタイミング
Visual Basic(VBA)
-
9
Access レポートの文字間を設定したい
PowerPoint(パワーポイント)
-
10
【ACCESS】フォーム名/コントロール名を文字列型変数で指定するには
Access(アクセス)
-
11
テキストボックスのカーソル位置の取得・設定方法
Visual Basic(VBA)
-
12
Access VBA Me.Requery レコードは削除されています エラー
その他(データベース)
-
13
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
14
ACCESSにて
Access(アクセス)
-
15
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
-
16
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
17
Accessのフォームにて、詳細行のボタンを行の内容により、表示/非表
その他(Microsoft Office)
-
18
ACCESSでサブフォームの編集中レコードの処理
その他(Microsoft Office)
-
19
Accessを使って日付を比較したい
その他(Microsoft Office)
-
20
もしフォームヘッダーにコントロールがあるのなら
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
Form_Load と Form_Activate の...
-
エクセルVBAのフォームを最...
-
VBA(エクセル)のユーザー...
-
ExcelVBAのユーザーフォームの...
-
EXCEL ユーザーフォームのタイ...
-
Excelのユーザーフォームのテキ...
-
VB.NET MDI親フォームのスクロ...
-
モードレスでユーザーフォーム...
-
フォームウィンドウを最前面に...
-
Hideについて(.NET)
-
VBAでユーザーフォームを再表示...
-
C#で起動時のフォームを非表示...
-
vb2008にてDefaultCellStyleが...
-
エクセルVBA(マクロ-コンボボッ...
-
Current、Openがそれぞれ2回発...
-
ACCESSのフォーム、開くんです...
-
ブックをCloseまたはQuitで閉じ...
-
テキストボックス入力データの...
-
Excelにて、ユーザーフォームで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
エクセルVBAのフォームを最...
-
クリックイベントなのに、2回ク...
-
ユーザーフォームのテキストボ...
-
モーダルフォームとモードレス...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
Hideについて(.NET)
-
ACCESSのフォーム、開くんです...
-
MSGBOXのフォント大きさ変更
-
Excelにて、ユーザーフォームで...
-
【VBAユーザーフォームで閉じる...
-
ユーザーフォーム上に現在日時...
-
VBA(エクセル)のユーザー...
-
access2021 更新前に処理をしたい
-
Accessで、一つのフォーム画面...
-
コントロールの存在確認
-
Microsoft Formsの「個人情報や...
-
複数モニタ使用時のフォームの...
おすすめ情報