VBA Access If语句不包含某个字符

问题描述

我试图在 Access 中编写一个 If 语句,该语句根据另一个值不包含字符“*”的事实来更改表单值的值。

到目前为止,我有这个:

If Forms![Saisie commande panier]![Qualité].Value = "CA" _
Or Forms![Saisie commande panier]![Qualité].Value = "Salarié" _
And Not Forms![Saisie commande panier]![SF_Panier]![SF_Détail_panier]![Designation].contains "*" Then
Forms![Saisie commande panier]![SF_Panier]![SF_Détail_panier]![Remise] = "30"

当然,这是行不通的。 你有什么解决办法吗?

知道这个表格是一个电子表格。 NOT LIKE 不行, 也不行...一定有一个简单的函数吧?

感谢您的帮助, 弗洛

解决方法

使用LikeIf Not someControl Like "*[*]*" Then
请注意,not 在 VBA 中的表达式之前,而在 SQL 中,您可以使用 not like

关于您的评论,我怀疑问题出在 Forms![Saisie commande panier]![SF_Panier]![SF_Détail_panier]![Designation]。您可能在某处错过了 Form。请参阅 this onethis one
大概是这样的
Forms![Saisie commande panier]![SF_Panier].Form![SF_Détail_panier].Form![Designation]
顺便说一句,如果您的代码在主窗体中,您可以编写它
Me![SF_Panier].Form![SF_Détail_panier].Form![Designation]