提问人:JCBq 提问时间:7/1/2023 最后编辑:Dale KJCBq 更新时间:7/2/2023 访问量:66
MS Access - 取决于变量文本列表的 SQL 值
MS Access - SQL value depending of a variable text list
问:
我有一个表,其中一列允许多个选定值(取决于另一个表)
例如:
A列 | B列 |
---|---|
值 1 | A、B |
值 2 | A、B、C |
我想做一个级联组合框:如果选择“值 1”,那么第二个组合框允许值“A”、“B”
我根据表/查询创建第二个组合框值 当我手动输入条件 In(“A”;”B“) 它有效,但不适用于我的变量 我试图通过VBA更改SQL,它仅适用于一个值,不适用于多个值
Me.Expectedvalueslist 为“A”;”B"
sqlresult = "SELECT [Table 2].Type, [Table 2].Description FROM [Nomenclature documentaire] WHERE ((([Table 2].Type) In (" & Me.Expectedvalueslist & "))); "
Expectedvalueslist.Caption = sqlresult
Me.DocumentSelect.RowSource = sqlresult
我创建的用于检查字符串结果的“sqlresult”标签准确地显示了我键入的内容,但组合框没有更新(我尝试了重新查询,但什么也没显示)
提前致谢
答:
0赞
June7
7/2/2023
#1
如果您希望组合框显示如下列表:
A
B
C
无法将 RowSource 设置为返回带有字符串的字段的 SQL 语句。A,B,C
第一个组合框可以具有以下 RowSource:
SELECT ColumnA, ColumnB FROM Table2;
然后,第二个组合框可以通过 VBA 设置 RowSource,并具有: 设置此组合框属性:
ValueList 的 RowSourceType 和 1 的 ColumnCount= Me.combobox1.Column(1)
评论
Row Source Type
Value List
A;B;C
A, B; C
A;B;C