【问题标题】:Access VBA - Export from query with query - to Excel访问 VBA - 使用查询从查询​​导出 - 到 Excel
【发布时间】:2016-04-10 19:48:11
【问题描述】:

我有一个查询显示来自 2 个表的连接记录。现在我想从该查询中选择具有所需 ID 的某些记录并将它们导出到 Excel。我该怎么做?

这不起作用:

Dim SQL As String
 
SQL = "SELECT * FROM Created_Query" & _
         " WHERE ID=" & Me![Combobox]
         
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, SQL, FileName, True

我也尝试过这样的 DAO.Recordset:

Dim Desired As Recordset
Dim SQL As String
      SQL = "SELECT * FROM Created_Query" & _
         " WHERE ID=" & Me![Combobox]
Set Desired= CurrentDb.OpenRecordset(SQL, dbOpenSnapshot)

以上方法均无效。我哪里错了?

【问题讨论】:

  • 在第一个选项中,您尝试导出 SQL 语句,而不是查询对象。在第二个中创建一个记录集,不要导出它。
  • @marlan,感谢您的回复,但我已经解决了。

标签: excel ms-access vba


【解决方案1】:

已解决,我需要 CreateQueryDef :)

Dim db As DAO.Database
Dim rs As Recordset
Set db = CurrentDb
Dim mySql As String
mySql = "SELECT * FROM Created_Query" & _
         " WHERE ID=" & Me![Combobox]


db.CreateQueryDef "temp", mySql
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "temp", FileName, True
DoCmd.DeleteObject acQuery, "temp"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多