Ms access 列标题未正确导出到Excel

Ms access 列标题未正确导出到Excel,ms-access,formatting,vba,Ms Access,Formatting,Vba,我有一个Access数据库,我正在使用它来构建数据,以便传输到我创建的Excel模板。在我的查询中有一个名为“#of OA Directs”的字段,当我运行查询时,字段名会正确显示。我正在导出到模板,该模板有一个与以下字段完全相同的字段: Function Transfer() Dim xlsxDestinationWorkbook As String FileCopy "\\1dc.com\common\OMA_COMMON1\HRDEX\Corporate Reporting\Spans

我有一个Access数据库,我正在使用它来构建数据,以便传输到我创建的Excel模板。在我的查询中有一个名为“#of OA Directs”的字段,当我运行查询时,字段名会正确显示。我正在导出到模板,该模板有一个与以下字段完全相同的字段:

Function Transfer()

Dim xlsxDestinationWorkbook As String

FileCopy "\\1dc.com\common\OMA_COMMON1\HRDEX\Corporate Reporting\Spans and Layers\Spans & Layers MASTER_TEMPLATE.xlsb", _
"\\1dc.com\common\OMA_COMMON1\HRDEX\Corporate Reporting\Spans and Layers\Spans & Layers MASTER_" & Format(Date, "yyyy_mm_dd") & ".xlsb"

xlsxDestinationWorkbook = "\\1dc.com\common\OMA_COMMON1\HRDEX\Corporate Reporting\Spans and Layers\Spans & Layers MASTER_" & Format(Date, "yyyy_mm_dd") & ".xlsb"

DoCmd.TransferSpreadsheet acExport, , "QRY_HEADCOUNT_OA_DETAIL", xlsxDestinationWorkbook, False, "Headcount Detail"

End Function
字段名正在更改为“.of”。我试着通过改变来解决这个问题

DoCmd.TransferSpreadsheet acExport, , "QRY_HEADCOUNT_OA_DETAIL", xlsxDestinationWorkbook, False, "Headcount Detail"


我的理解是,我选择的true或false将决定是否将标题行放入模板中,但无论如何,它似乎都会更新此字段。如果您能提供任何帮助,我们将不胜感激。客户希望字段以这种方式命名,并且文件本身将通过导入过程获取,如果列名无法修复,则需要修改该过程。

请尝试在查询中将字段别名为
[\of OA Directs]
。最好不要在任何名称中使用空格、标点符号、特殊字符(下划线除外)。使用Num或No代替#。用[]括起来应该允许字符通过,但最好用最佳做法避免这个问题。如果名称有空格,则[]是必需的。如前所述,请尝试使用不带空格或特殊字符的字段名。然后在“查询设计”视图中,将字段的标题属性设置为需要显示的内容。
DoCmd.TransferSpreadsheet acExport, , "QRY_HEADCOUNT_OA_DETAIL", xlsxDestinationWorkbook, False, "Headcount Detail"