アクセスデータベースから大量のデータをフィルタリングする必要があります。私はこれを達成するためのプログラムを構築していますが、フィルタで複数の基準を使用する際の問題にぶつかります。複数の条件でデータセットをフィルタリングする
If RadioButton1.Checked Then
If RadioButton4.Checked Then
Me.BindingSource.Filter = "[January] = 'True' AND [Red] = 'True'"
ElseIf RadioButton5.Checked Then
Me.BindingSource.Filter = "[January] = 'True' AND [Yellow] = 'True'"
ElseIf RadioButton6.Checked Then
Me.BindingSource.Filter = "[January] = 'True' AND [Blue] = 'True'"
Else Me.BindingSource.Filter = "[January] = 'True'"
End If
ElseIf RadioButton2.Checked Then
If RadioButton4.Checked Then
Me.BindingSource.Filter = "[February] = 'True' AND [Red] = 'True'"
ElseIf RadioButton5.Checked Then
Me.BindingSource.Filter = "[February] = 'True' AND [Yellow] = 'True'"
ElseIf RadioButton6.Checked Then
Me.BindingSource.Filter = "[February] = 'True' AND [Blue] = 'True'"
Else Me.BindingSource.Filter = "[February] = 'True'"
End If
ElseIf RadioButton3.Checked Then
If RadioButton4.Checked Then
Me.BindingSource.Filter = "[March] = 'True' AND [Red] = 'True'"
ElseIf RadioButton5.Checked Then
Me.BindingSource.Filter = "[March] = 'True' AND [Yellow] = 'True'"
ElseIf RadioButton6.Checked Then
Me.BindingSource.Filter = "[March] = 'True' AND [Blue] = 'True'"
Else Me.BindingSource.Filter = "[March] = 'True'"
End If
End If
さて、これも3ヶ月と色の大量のコードがある:例えば、ここで指定された月と色を使用して選択のためのテストコードです。これを行うにはより良い方法が必要です。そうですか?テーブルの多くのフィールドを並べ替える必要があるので、このようにするには何年もかかるだろう。コードの場合
。色の束と同じです。 – Plutonix
その理由は、アイテムが複数の月、複数の色などを持つ可能性があるからです。 – MoNoGoAt
これは単なるデザイン上の欠陥です.1:mの関係が欠落しています。それは1つの属性を記述するのに12の列を取らない。 – Plutonix