私は、Access 2007 を使用してユーザーの収集品コレクションを維持するための簡単なアプリを作成する任務を負いました。いくつかの要求があり、作成して実装しました。それらは:
- 彼のすべての収集品を一覧表示する 1 つのメイン フォーム
- 同じメイン フォームの下にタブ付きのコントロールがあり、各タブにはメイン フォームとは異なる条件に基づいてデータを実際に「フィルター処理」するサブフォームが含まれています。たとえば、1 番目のサブフォームは、メイン フォームでコレクタブル フィギュアの名前を取得し、サブフォームでその名前を使用する他のすべてのレコードを表示します。つまり、フィギュアが「Darth Vader」の場合、サブフォームには「Darth Vader」という名前を持つすべての収集品がリストされます。
ユーザーのリクエストに応じてアプリケーションを作成しましたが、これまでのところ、私たちの両方を悩ませていることが 1 つあります。サブフォームの最初のレコードは、メイン フォームと同じです。私たちは両方ともそれが冗長で迷惑だと感じています。確かに、私の Access スキルはせいぜい弱いので、これは簡単な修正かもしれませんが、サブフォームの重複レコードを削除する方法はありますか? メインフォームに「Figure ID」を含めないようにサブフォームに where 句を実装しようとしました。問題は、サブフォームまたはメイン フォームを開くときに、メイン フォームの FigureID を要求するパラメーター プロンプトのように動作していることです。Figure ID を入力すると機能しますが、プロンプトは明らかに望ましくないものです。
ご参考までに:
- メイン フォームは、基本的に "Figures" テーブルおよびその他の関連テーブルからすべてのレコードを選択するクエリに基づいています。
- サブフォーム コントロールをタブ コントロールにドロップすると、サブフォームが作成され、必要なマスター フィールドと子フィールドがリンクされました。