VBA运行时错误3326:此记录集在交叉表查询上不可更新

时间:2014-05-28 20:14:27

标签: excel vba ms-access access-vba

我正在尝试从Access输出交叉表查询,我读到2010年最好使用OutputTo方法而不是TransferSpreadsheet方法。我有以下代码行,有时它可以完美地工作,有时它会解决VBA运行时错误3326:此记录集不可更新。我根本不想更新任何数据 - 我只是想将结果数据导出到Excel。

DoCmd.OutputTo acOutputQuery, "qryStates_1_Crosstab", "ExcelWorkbook(*.xlsx)", my_filename, False

我还需要做些什么来使其输出正确吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,ashleedawg的答案起作用了,只是有一些错别字:

DoCmd.RunSQL "SELECT * INTO tempTable FROM qryStates_1_Crosstab"

缺少星号

DoCmd.OutputTo acOutputTable, "tempTable", acFormatXLSX, my_filename, False

acOutput类型应该是表,而不是查询。我使用acFormatXLSX而不是字符串样式。我不知道这是否重要,但它已经是我键入的代码的一部分,因此在适应她的答案时,我会保留它。