別フォームのテキストボックスに値を入力する方法です。
例
まず、親フォームにテキストボックス(textMessage)と開くボタン(buttonOpen)を配置します。
次に、子フォームにも同じようにテキストボックス(textMessage)と書込みボタン(buttonWrite)を配置します。
あと、フォームのプロパティでポップアップを「はい」にしてください。
そして、それぞれのイベントプロシージャに次のように記述します。
親フォーム
Private Sub buttonOpen_Click() DoCmd.OpenForm "子フォーム", acNormal, , , , acDialog End Sub
子フォーム
Private Sub buttonWrite_Click() Forms!親フォーム!textMessage.Value = Me.textMessage.Value End Sub
では実行してみます。
親フォームを起動したら、「開く」ボタンをクリックします。
子フォームが開いたらテキストボックスに値を入力して「書込み」ボタンをクリックします。
すると親フォームのテキストボックスに値が入力されます。
解説
Forms![フォーム名]![コントロール名]と指定すると別フォームのコントロールにアクセスするこが出来ます。ただし、対象のフォームが開いていることが条件ですので注意してください。スポンサーリンク