访问Excel:布尔值更改为数字

我注意到,将查询结果从Access传输到Excel时,无论是通过复制/粘贴还是使用DoCmd.OutputToTrue / 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])