用2个字段创建一个新表;学生证和学科。将所有主题写入该表格。当需要返回它们时,可以使用子表单(在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写入您的主题字段。
当你去阅读这个信息时,你需要将它解析成一个数组并向后工作,根据数组中的值确定应该标记哪个复选框。
我建议不要使用带有多值列的表格,它们会导致更多的问题,而不是好处 –
我同意,创建表格,您将存储可选主题 - 一旦选择主题,您就可以轻松插入新值,或从中删除每个学生的桌子。 – Velid