gpt4 book ai didi

vba - 编译期间的陷阱语法错误

转载 作者:行者123 更新时间:2023-12-02 11:09:11 25 4
gpt4 key购买 nike

我正在根据一个值有条件地设置一个列表框行源:

如果MyValue =“”,则
Me.MyList.RowSource =“选择...
从...
正确加入...
通过...分组...
订购...
其他
Me.MyList.RowSource =“选择...
从...
正确加入...
通过...分组...
HAVING MyValue
订购...
万一

其中MyValue是HAVING部分的一些标准。
只要MyValue不是“”(空白),此方法就可以正常工作。但是,在编译过程中,我收到一个Microsoft Access错误:“HAVING子句语法错误”。在运行期间,不会发生带有HAVING的“else”,因此在那里没有错误。如何避免或捕获“HA​​VING子句的语法错误”。在编译期间?通常的“On error ...”在编译期间不会被捕获。

谢谢。

最佳答案

编译器无法将代码插入列表框字段并检查结果。但是,一些好的做法将帮助您解决这一问题。

Dim strRowSourceSQL as String

strRowSourceSQL = "SELECT ... FROM ... RIGHT JOIN ..."

If MyValue = "" then
strRowSourceSQL = strRowSourceSQL & "MORE SQL HERE"
else
strRowSourceSQL = strRowSourceSQL & "DIFFERENT SQL HERE"
end if

Me.MyList.RowSource = strRowSourceSQL

这种安排将使您检查 strRowSourceSQL。设置一个断点并...
Debug.Print strRowSourceSQL

完成后,放到查询编辑器中并解决问题。另外,遵循 these principles

关于vba - 编译期间的陷阱语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35444379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com