停止Ms Excel将数字string自动格式化为数字

我从MS Access(2003)输出报告到Excel(97-2003)输出。

其中一列有一些string,例如“05-0880”。

当我在MS Excel中打开输出文件时,相应的单元格被设置为数字-372424

我认为这是由于Excel是“聪明的”,并确定“05-0808”代表某种types的时间值或date,并将string转换为相应的数值。

在我的情况下,数据代表产品代码,这种转换是非常不可取的。 如果我导出报表的底层查询(导出数据表)的输出,则不会发生此转换。 (build议访问必须以防止转换的方式输出为Excel格式)。

我尝试更改报表中字段的格式属性,但没有“文本”选项,“标准”似乎performance为空白。

有没有办法使用format()函数来强制输出string? 如果是这样,当Excel仍然可以进行巧妙的转换时,这甚至会有帮助吗?

只使用基础查询作为输出是一个选项,但不理想,因为格式化和分组丢失。 将报告导出为文本格式是一种灾难,因为列没有分隔。

事实上,它更像是相反的方式。 MS Access是愚蠢的,从报告中正确地导出它。 你可以使用引号或撇号装饰数据; 然而,如你所知,这是相当丑陋的,需要后处理。

我的方法是仔细制作一个查询,然后导出查询结果而不是报表。 这会给你你期望的结果。

导出“05-0880”而不是“05-0880”。

确保你使用单引号而不是其他撇号。