0
使用Excel VBA,我试图与Access 2007访问是/否字段的数据类型不匹配与布尔值
在接入领域被定义为Yes/No
执行使用ADO一个parametised查询,并指定为参数如下:
If UF_Main.obCRTN.Value Then
.Parameters.Append .CreateParameter("p18", adBoolean, adParamInput, , False)
Else
.Parameters.Append .CreateParameter("p18", adBoolean, adParamInput, , True)
End If
注意,控制obCRTN
是OptionButton
和if语句正常工作。
当我尝试执行查询但是,会引发Data type mismatch in criteria expression.
错误。从查询和代码中删除上述参数时,查询执行正常。
根据documentation for ADO on W3Schools,DataType Enum
对于Yes/No
在Access中应为adBoolean
。
任何人都可以帮助为什么这个错误被抛出?
你确定你有正确顺序的参数?不管你称之为什么,参数必须按照它们在查询中出现的顺序排列。 – Fionnuala 2014-11-03 14:46:41
@Fionnuala绝对是正确的顺序。 – Gareth 2014-11-03 14:49:56