説明
表形式のフォーム上に全レコードが表示されている状態。ここで「分類名」フィールドがあり、複数の 分類名の値が記録されている場合に、分類名の値ごとにボタンを設置してクリックすることで、分類名に該当する レコードを抽出表示する仕組みである。作り方は「オプショングループ」コントロールに「トグルボタン」 コントロールを設置する。そしてトグルボタンをクリックしたときにフィルタ命令(メソッド)を機能させる。
作成手順
- 次は作成対象となる表形式のフォーム[F_備品リスト]である。[分類名]には「パソコン」「家電」「衣類」「趣味」「その他」
のレコードが保存されている。
- このヘッダ部にオプショングループのコントロールを設置し、名前:[分類抽出]とする。その中にトグルボタン6つを設置、各ボタンに
分類名の名前を付けた。設置順にオプション値が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.Filter = "分類名 = '趣味'"
Me.FilterOn = True
Case 5 'オプション値が「5」の時の処理
Me.Filter = "分類名 = 'その他'"
Me.FilterOn = True
Case 6 'オプション値が「6」(全て)の時の処理
Me.FilterOn = False
End Select
End Sub
実施結果
フォームビューにして、トグルボタンをクリックしてみよう。分類で指定した値を持つレコード のみが表示される。

「全て」のボタンをクリックするとフィルタが解除されるので、全レコードが表示される。

(この項終わり)