【问题标题】:Exporting a recordset from Access 2007 to spreadsheet将记录集从 Access 2007 导出到电子表格
【发布时间】:2014-03-04 15:48:32
【问题描述】:
Private Sub Command27_Click()
Dim ltr As DAO.Recordset
Set ltr = Me.RecordsetClone
    If Not (ltr.BOF And ltr.EOF) Then
        ltr.MoveFirst
        End If
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel3, ltr, "C:\Test\db"
    Set ltr = Nothing
End Sub

我正在尝试将通过我的表单从表格中提取的特定记录导出到 Excel 电子表格。我目前收到“运行时错误 '2498':您输入的表达式是这些参数之一的错误数据类型。”

我注意到我只有在尝试导出记录集时才会得到这个。如果我尝试导出整个表,我会收到不同的错误消息。 “运行时错误‘3170’:找不到可安装的 ISAM。”

我已经对此进行了一些阅读,但大多数人说他们通过将 Office 更新到较新版本来解决了这个问题,但是我已经有了比帖子更新的版本。

在这件事上的任何帮助将不胜感激。

提前致谢。

【问题讨论】:

    标签: ms-access ms-access-2007 vba


    【解决方案1】:

    您收到错误是因为 ltr 是一个 RecordSet 并且该函数需要一个字符串。

    其次,acSpreadsheetTypeExcel3 是一种非常古老的 excel 文件类型。我个人至少应该使用 acSpreadsheetTypeExcel9。这将解决您的第二个错误。

    我相信这应该可行

    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, ltr.Name, "C:\Test\db"
    

    这是假设 ltr 包含表名。如果 ltr.Name 返回一个查询,那么这可能不起作用。

    【讨论】:

      猜你喜欢
      • 2013-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-27
      • 2010-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多