2017-07-25 15 views
0

3つの別々のページを持つタブコントロールに加えて、このフォームに複数のコントロールがあります。上記のページで値を選択すると、各ページ内のサブフォームを再クエリーする必要があります。これを説明する目的のためにそうタブコントロール内でサブフォームを再クエリーする

..

私は、フィールド上のイベントOn_Click()Address_IDと呼ばれています。そのIDの値を他の2つのID、Cust_IDLocation_IDに、そしてサブフォームOrder_SubOrdersページ内で再クエリすることを意味します。

私はタブコントロールを非常に淡く、ちょうどtabCtlと命名しました。

これまでのところ、私はサブフォームを参照するためにあらゆる方法で試してみましたが、役に立たなかったのです。

Forms!Record_Details!Orders!Orders_Sub.Requery 

これはうまくいかないが、私はそうするべきだと思う。何がありますか?

+0

プロパティダイアログボックスでサブフォームセットのレコード/行ソースがありますか?もしそうなら、それを新しい値でリセットしていませんか? –

+0

サブフォームにはそれぞれ、フォーム上の3つのコントロール値に等しい3つのフィールドを設定する基準を含むクエリレコードソースがあります。これらのコントロールは、それぞれがクリックされるとID値に設定されます。だから私は、すべてのコントロールにデータが入っているので、単純なクエリーで十分だろうと思った。 – Steven

+0

Clickの代わりにAfterUpdateイベントを使用しようとしましたか?私は、Address_IDの値が変更されると仮定しています。 –

答えて

2

スティーブ

コード内のタブコントロールを参照する必要はありません。サブフォーム自体を参照して再クエリするだけです

Forms.Record_Details.Form.Orders_Sub.Requery 
+0

ありがとう、それは今完全に動作します。それがどのように機能するのか説明することができますか、それを記述する記事を教えてください。フォームは、サブフォームの親としてタブを処理しませんか? – Steven

+0

技術的にはまだそれはまだRecord_Detailsのサブフォームです。だから、タブコントロールを参照しようとするだけでなく、必要はありませんが、コンパイラを混乱させる可能性が最も高いです。タブコントロールのプロパティを見ると、サブフォームはそのレベルで利用可能であるとは言えません。https://msdn.microsoft.com/en-us/vba/access-vba/articles/tabcontrol-object-access –

関連する問題