2つのフィールドで新しいテーブルを作成します。学生IDと科目。すべてのサブジェクトをそのテーブルに書き込みます。それらを返す必要がある場合は、サブフォーム(StudentIDでリンクされている)を使用するか、必要に応じてピボットテーブルを作成します。
複数値列は最適ではないため、多くの問題が発生します。 が絶対にでなければならない場合は、データを抽出するときに解析する必要があります。あなたが最初にそれを書くとき、あなたは次のようなステートメントを書く必要があります:
MyStr = ""
If Me.Checkbox1 = True then
MyStr = MyStr & "SomeValue, "
EndIf
If Me.Checkbox2 = True then
MyStr = MyStr & "SomeValue2, "
EndIf
If Me.Checkbox3 = True then
MyStr = MyStr & "SomeValue3, "
EndIf
If Me.Checkbox4 = True then
MyStr = "SomeValue4, "
EndIf
If Len(MyStr) > 2 Then
MyStr = Left(MyStr, Len(MyStr) - 2)
EndIF
これが行うことは、継続的にあなたがチェックボックスに割り当てる値を追加して、最後の2つの文字を削除します(あるべき「」)ので、あなたは、完全な文字列を持っています。 MyStrをSubjectフィールドに入力します。
この情報を読むには、配列に解析して後方に向かって、配列内の値に基づいてどのチェックボックスをマークするかを決定する必要があります。
多値列のテーブルを使用しないことをお勧めします。便益よりも多くの問題が発生します –
私は同意します。オプションの科目を保存するテーブルを作成します - 科目が選択されるか、各生徒のためのテーブル。 – Velid