访问Excel:布尔值更改为数字
我注意到,将查询结果从Access传输到Excel时,无论是通过复制/粘贴还是使用DoCmd.OutputTo
, True
/ False
值在Excel中都变为-1或0。
我当然可以写一个VBA过程来填补Excel,但我想知道:有什么窍门,我可以使用简单的传输工作? 换句话说,我应该将哪个值分配给查询列以在Excel中获得正确的True
/ False
?
我也注意到,在Excel中,True不等于-1。 这不仅仅是格式化的问题,就像在Access中一样。
尝试迄今没有成功:
- 使用'cBool':在Access中有很好的
True
/False
,但是在Excel中也是-1/0 - 将查询中的
Format
字段属性更改为“True / False”:结果相同
在您的查询中,您可以使用此expression式在导出过程中强制将True / Falsestring转换为Excel:
SpelledBoolean: Format([YourBooleanField], "True/False")
要返回0或1,请使用Abs:
ZeroOneBoolean: Abs([YourBooleanField])