※ ChatGPTを利用し、要約された質問です(原文:サブフォームのコントロールの値を取得したい(VBA))
サブフォームのコントロールの値を取得する方法(VBA)
このQ&Aのポイント
サブフォーム(フォーム2)の中にあるテキスト1の値をVBAで取得する方法がわかりません。
フォーム2を開いた状態でフォーム2のコントロールを参照することはできますが、フォーム2を閉じた状態でフォーム1からフォーム2のコントロールを参照する方法がわかりません。
変数にフォーム2のテキスト1の値を代入したいのですが、正しい書き方がわかりません。
サブフォームのコントロールの値を取得したい(VBA)
連続投稿失礼します。
ファーム1のなかにサブフォーム(フォーム2)を設置しました。
フォーム2の中にはテキスト1があります。
VBAでテキスト1の値を取得したいのですがうまくいきません。
フォーム2を開いた状態で、
Sub test1()
MsgBox Forms("フォーム2").Controls("テキスト1")
End Sub
を行なうと、
「あああ」
が返ってくるのですが、
フォーム2を閉じて、
フォーム1を開き、上のコードを実行すると、
「マクロの式、またはVisual Basicのコードで参照されている 'フォーム2'フォームが見つかりません。」
となってしまいます。
普段はフォーム2は閉じ、フォーム1を開いて使うため、
この状態でのVBAコードが知りたいです。
ちなみに変数を代入したいので
「Form_フォーム2.テキスト1」の書き方よりカッコでくくる書き方でご回答いただければ助かります。
よろしくお願いします。
お礼
MsgBox Forms("フォーム1").Controls("フォーム2").Controls("テキスト1") これで解決しました。 ありがとうございます。