Ms access 导出.xlsx中的访问记录集时出错

Ms access 导出.xlsx中的访问记录集时出错,ms-access,vba,Ms Access,Vba,我想通过VBA将Access 2010中的记录集“myTableRS”导出到.xlsx文件中,但它会将错误显示为“您输入的表达式的某个参数的数据类型错误”。如果我使用msgbox(myTableRS![Field3])从msgbox中的记录集中访问任何字段值,那么工作正常。即使在我导出Access表时,下面的代码也可以正常工作,但不适用于myTableRS记录集 我正在使用代码: DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExce

我想通过VBA将Access 2010中的记录集“myTableRS”导出到.xlsx文件中,但它会将错误显示为“您输入的表达式的某个参数的数据类型错误”。如果我使用msgbox(myTableRS![Field3])从msgbox中的记录集中访问任何字段值,那么工作正常。即使在我导出Access表时,下面的代码也可以正常工作,但不适用于myTableRS记录集

我正在使用代码:

 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, _
   myTableRS, "D:\MAS.xlsx", True
有人能告诉我怎么修吗


如何创建已保存的查询?我有一个表,我想从中搜索一条特定记录,并仅在xlsx中搜索的同时保存该特定记录。如果您查看,您将看到表名是一个字符串

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, _
   "myTableRS", "D:\MAS.xlsx", True
这意味着您不能使用TransferSpreadsheet导出记录集,但是,您可以创建保存的查询并导出该查询

创建保存的查询

sSQL = "SELECT * FROM MyTable WHERE Id = " & thenumber

If Not IsNull(DLookup( _
    "ExportQuery", "MSysObjects", "[Name]='ExportQuery' AND Type= 5")) Then
    ''Query exists, overwrite the sql permanently
    CurrentDb.QueryDefs("ExportQuery").SQL = sSQL
Else
    CurrentDb.CreateQueryDef "ExportQuery", sSQL
End If

我相信我已经演示了如何创建保存的查询。