2017年9月15日

【Access】別フォームのテキストボックスに値を入力する



別フォームのテキストボックスに値を入力する方法です。



まず、親フォームにテキストボックス(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![フォーム名]![コントロール名]と指定すると別フォームのコントロールにアクセスするこが出来ます。ただし、対象のフォームが開いていることが条件ですので注意してください。



スポンサーリンク