2010-11-29 20 views
4

プログラムでAccess VBAを使用してフォームにサブフォームを追加する方法はありますか?私は、ユーザーが要求したときに動的に生成される一時テーブルを持っています。可能であれば、私は一時テーブルに基づいてフォームを作成し、サブフォームとして既存のフォームに追加したいと考えています。MS Access:プログラムでサブフォームを追加する方法

+1

なぜですか?既存のサブフォームを使用して、レコードソースとコントロールが実行時にバインドされるフィールドを変更しないでください。私の意見では、プロダクションアプリの設計変更は、本当に素敵なやり方です。 –

+1

ソースオブジェクトを設定するためにデザインを変更する必要はありません。実行時に実行することができ、サブフォームコントロールはテーブルまたはクエリをフォームとして表示するのと同じくらい簡単です。 – Fionnuala

+0

そして、この場合、3から50までのフィールドがあります。ユーザーが3を要求するときに、50以上の静的フィールドを持つフォームを不必要に乱雑にします。 – Adam

答えて

4

サブフォームコントロールを作成し、ソースオブジェクトをテーブルまたはクエリのいずれかに設定することをお勧めします。

Me.NameOfSubformControl.SourceObject = "Query.Query1" 
Me.NameOfSubformControl.SourceObject = "Table.Temp" 

保存されたクエリのSQLを更新して、新しい一時テーブルを参照することもできます。

+1

@ David-W-Fentonなぜですか?ソースがテーブルまたはクエリでフォームに設定されていないため、コントロールは関係ありません。私はあなたが言うことが本当ではないことを恐れています。 – Fionnuala

+1

それはとてもうまくいくようです。この場合、どんなコントロールにも騙される必要はありません。 – JeffO

+0

私は誤読しました。あなたはサブフォームのSourceObjectを設定することを提案しています(これはあなたが言ったことですが、私は注意深く読んでいませんでした)。コメントを削除します。 –

関連する問題