メインフォームには10個のタブがあり、各タブにはサブフォームコントロールが1つあります。 10個のタブすべてをサブフォームとして開始しました。メインフォームには少数の追加コントロールしかなく、そのうち1つは主キーです。この主キーを含むすべてのサブフォームのRecordsource。 OKを表示しますが、メインフォームのレコードナビゲーションでは新しいレコードへの移動が許可されず、メインフォームの新しいレコードボタンが機能しないため、新しいレコードを追加できません。最初のタブ上のすべてのコントロールがサブフォームではなくメインフォームの一部になるように、設計を変更しようとしました。すべてのサブフォームレコードセットが、クエリにPKを含まず、マスター/子プロパティを介してのみリンクするように変更しました。これで新しいレコードに移動することができます(ただし、新しいIDパラメータを入力する前にプロンプトが表示されますが、既存のレコードを編集することはできません)。Access 2007複数のサブフォームをタブでメインフォームにリンクするには
これを行う正しい方法は何ですか?オンになっているがメインフォームでスイッチオフされているサブフォームにナビゲーションを記録しますか?レコードソースのクエリの一部としてのPKかどうかすべてのサブフォームまたは良いアイデアは、最初のタブをメインフォームの一部として持っていますか?何かアドバイス?
単純にテーブルをバインドするのではなく、ADOを使用して非標準の設定をしていることを覚えているようですが、それは間違いありませんか?ところで、私は10タブを使用することはありません。タブを使用しているかのように見せかけ、必要に応じてサブフォームをロードするだけでパフォーマンスを向上させる方がよいでしょう。 – Fionnuala
私は通常、対応するタブが最初に選択されたときに、サブフォームコントロールを空のままにして、フォームを 'SourceObject'に割り当てます。 –
@Remou:いいえ、すべてのフォーム/サブフォームコントロールはテーブルにバインドされています。異なるサブフォームは異なる時に関連するので、メインフォームのOn Loadイベントを使用して、サブフォームコントロールのSourceObjectを設定しています。 – Chelle