0
我正在使用VBA在我的Access表中的一列中写入0/1。 如果包含在两列[IsYTD?]和[SO Tarihi])中的日期之间的差异是< 365,我希望在[IsYTD?]中写入1,而在另一种情况下为0。这是我目前的代码,但它似乎不起作用。你可以帮我吗?在ACCESS中使用VBA以运行带CASE语句的SQl
SQL3 = "UPDATE [1 - CURRENT RAW DATA SOURCE] SET [IsYTD?] = CASE " & _
"WHEN ([IsYTD?]-[SO Tarihi])<365 THEN 1 " & _
"ELSE 0 " & _
"END"
DoCmd.RunSQL SQL3
Access不支持CASE表达式,你需要使用['IIF'(https://开头WWW .techonthenet.com/access/functions/advanced/iif.php)pr ['SWITCH'](https://www.techonthenet.com/access/functions/advanced/switch.php)。 [Access中的Case表达式](https://stackoverflow.com/q/772461/1048425)中可能的重复。 – GarethD
[Access中的Case表达式]的可能重复(https://stackoverflow.com/questions/772461/case-expressions-in-access) – Andre