• ベストアンサー

Access メインフォーム サブフォームにて

お世話になります。 Accessにて メインフォームにコマンドボタンを置いて、クリックするとサブフォームのレコードが 次に行くようにしたいのですが、 コマンドボタン クリック Forms![メインフォーム]![サブフォーム名].Form!フィールド名.SetFocus DoCmd.GoToRecord , , acNext メインフォームとサブフォームのレコードが次に行ってしまいます。 サブフォームだけ次のレコードに行くには、どのようにすれば良いのでしょうか。 分かる方教えて下さい。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

>Forms![メインフォーム]![サブフォーム名].Form!フィールド名.SetFocus Forms!FMain!埋め込み0.SetFocus DoCmd.GoToRecord , , acNext 以下の[サブフォーム表示コントロール名]はサブフォームそのものの 名前でなく、デザインビューでサブフォームを表示するために設定 するコントロールの名前で、初期値は[埋め込み0]のような名前 であることに留意をしてください。もしサブフォームと同じ 名前に設定しているならば問題はありませんが。 以上を踏まえて、たとえば、 Forms![メインフォーム]![サブフォーム表示コントロール名].SetFocus DoCmd.GoToRecord , , acNext これで、サブフォームの次のレコードに移動します。 もし、質問の中の特定のフィールドにフォーカスを 当てたいのであれば、移動後にその特定のフィールドに フォーカスを当てればいいので、 Forms![メインフォーム]![サブフォーム表示コントロール名].SetFocus DoCmd.GoToRecord , , acNext Forms![メインフォーム]![サブフォーム表示コントロール名].Form![フィールド名].SetFocus これで、レコードを移動したときにフォーカスは 特定のフィールドに当たっています。

BighooterV
質問者

補足

ありがとうございます。 フィールド名を取りましたらサブフォームだけレコードを捲ってくれました。 大変助かりました。

その他の回答 (1)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

No1です。消すつもりの下書きが混じっていました。 No1の最初の部分の、 Forms!FMain!埋め込み0.SetFocus DoCmd.GoToRecord , , acNext は読み飛ばしてください。

関連するQ&A