我是一个新手,我需要帮助理解我做错了什么。我在表中有一个计算字段,我输入的表达式粘贴在下面,我得到一个无效的语法:-
IIf([JPP-JPA_Received_Date]<=[JPP-JPA_Due_Date],"On Time", IIf([JPP-JPA_Received_Date]>[JPP-JPA_Due_Date],"Late", IIf([JPP-JPA_Received_Date],Is Null, AND IIF([JPP-JPA_Due_Date]<Date(),"Over Due"))))
有几件事有点不对劲。
检查[jp - jpa_received_date]是否为空且[jp - jpa_due Date]在今天之前的部分,应该都包含在单个Iif
函数的条件部分中。
您还可能需要将[JPP-JPA_Received_Date]
的每个实例包装在Nz()
函数中。这是因为如果它为null, Access可能会在null <= Due Date这样的表达式上出错。
最后,我推荐SWITCH
函数。它的作用类似于嵌套的if语句,但更容易理解。