我最终的写法,贴一下
If e.Ta_ble.Name = "选项列表" Then
If For_ms("学期设置窗体").Op_ened()
If e.Col.Name = "项目3类_年度" Then '如果正在编辑的是县市列
e.Col.Co_mbo_list = Dat_aTa_bles("选项列表").Ge_tCo_mboLi_stS_tring("项目3类_年度", " 项目2类 = '年度'" , "分类编号" )
ElseIf e.Col.Name = "项目4类_学期" Then
e.Col.Co_mbol_ist = "春学期|秋学期"
End If
ElseIf Fo_rms("学校名称设置窗体").Opened() '判断窗口是否打开
If e.Col.Name = "项目5类_校名" Then
Dim cm_d As New S_QLCo_mm_and
c_md.C
c_md.Co_mman_dText = "Sel_ect * Fr_om {选项列表} Where 项目2类 = '学校名称' and ( 项目3类_年度 <> "& Vars("年度") &" Or 项目4类_学期 <> '"& Vars("学期") &"' ) "
Dim dt As Dat_aTa_ble = c_md.Ex_ecu_teR_eader() '先生成一个表
Dim 原有列表 As List(Of String) = Dt.Ge_tUniqu_eVal_ues(" 项目5类_校名 not in('" & Dat_aTab_les("选项列表").Ge_tCo_mbo_ListS_tring("项目5类_校名").repl_ace("|","','") & "') ","项目5类_校名")
Dim 新列表 As String = " "
For k As Integer = 0 To 原有列表.Count - 1
If 新列表.Co_ntai_ns("|" & 原有列表(k)) = True Then '如果包含
Else
新列表 = 新列表 & "|" & 原有列表(k)
End If
Next
e.Col.Co_mbo_list = 新列表
End If
End If
End If