オプショングループとトグルボタンの組み合わせによるレコードの抽出
説明
表形式のフォーム上に全レコードが表示されている状態。ここで「分類」フィールドがあり、複数の 分類の値が記録されている場合に、分類の値ごとにボタンを設置してクリックすることで、分類に該当する レコードを抽出表示する仕組みである。作り方は「オプショングループ」コントロールに「トグルボタン」 コントロールを設置する。そしてトグルボタンをクリックしたときにフィルタ命令(メソッド)を機能させる。
手順
- 表形式の連結フォームを作成して、全レコードが表示できるようにしておく。
例では
抽出する為のフィールドを「契約区分」
「分類」にある値は「有効」「無効」「不明」とする。
- フォームに「オプショングループ」コントロールを設ける。
例では
名前:[Flm_区分抽出]
- オプショングループ内にトグルボタンを設置
例では4つ設置(「有効」「無効」「不明」「全て」)。
「オプショングループ」コントロールの中に「トグルボタン」を4つ設置する。
設置順にオプション値が1から順に2、3と自動的に付与される。
- オプションコントロールの更新後処理にイベントプロシージャを作成する。
Private Sub Flm_区分抽出_AfterUpdate()
Select Case Flm_区分抽出
Case 1 'オプション値が「1」の時の処理
Me.Filter = "契約区分 = '有効'"
Me.FilterOn = True
Case 2 'オプション値が「2」の時の処理
Me.Filter = "契約区分 = '無効'"
Me.FilterOn = True
Case 3 'オプション値が「3」の時の処理
Me.Filter = "契約区分 = '不明'"
Me.FilterOn = True
Case 4 'オプション値が「4」(全て)の時の処理
Me.FilterOn = False
End Select
End Sub
- フォームビューにして、トグルボタンをクリックしてみよう。分類で指定した値を持つレコード のみが表示される。「全て」のボタンをクリックするとフィルタが解除されるので、全レコードが表示される。
(この項終わり)