質問: "テーブル1のサブフォーム" end sub とするとコンパイルエラーになります。 良い方法があれば教えてください。アドバイスよろしくお願いします。
回答: 一応、以下を確認をしておきます。 1 「フォーム1」は親フォーム 2 「テーブル1のサブフォーム」はサブフォーム 3 「テーブル1のサブフォーム」のrecordsourceは「テーブル1」 であるとします。何故という部分をわかりやすく するために以下のように設定してみてください。 1 「テーブル1のサブフォーム」をデザインビューで開き、 プロパティの「レコードソース」の「テーブル1」を 削除し、そのまま保存してとじてください。 2 親フォームをデザインビューで開き、サブフォームを 表示するコントロールのプロパティを開き「ソースオブジェクト」 の「テーブル1のサブフォーム」を削除し、そのまま閉じてください。 このとき、サブフォームを表示するコントロールの名前が 「テーブル1のサブフォーム」になっているのか、あるいは 「埋め込み0」のような名前になっているのか確認をしてください。 もし、「埋め込み0」のような名前になっているのならば 以下のコードの中で「テーブル1のサブフォーム」を 「埋め込み0」というように変更してください。 フォーム1にコマンドボタンを二つ設定し、それぞれのクリック イベントに以下を設定します。 'サブフォーム表示コントロールのソースオブジェクトの設定 private sub コマンド1_click() me.テーブル1のサブフォーム.sourceobject = "テーブル1のサブフォーム" end sub 'サブフォーム表示コントロールに設定するフォームのレコードソースの設定 private sub コマンド2_click() me.テーブル1のサブフォーム.form.recordsource = "テーブル1" end sub フォーム1のサブフォーム表示コントロール名の設定が うまくいっていれば、コマンド1のクリックイベントで 「フォーム1」に「テーブル1のサブフォーム」が表示 されたと思います。このとき、「テーブル1のサブフォーム」 のフィールドには「#name?」のような表示がされていると 思います。すなわちこときはサブフォームにはレコードソースが 設定されていないからです。 次に、コマンド2のクリックイベントで、「テーブル1のサブフォーム」 にレコードが表示されたと思います。 上記は「親フォーム」、「サブフォーム表示コントロール」、 「サブフォーム」の関係を質問のフォームを使って説明したものです。 したがって、質問の回答を端的にするならば、上記の操作を せずに、 me.テーブル1のサブフォーム.form.recordsource = "テーブル1" すなわち、上記のコマンド2のクリックイベントが 回答ということになります。