运行访问查询并将结果复制到 Excel 中



我是VBA的新手,如果这个问题不符合标准,我深表歉意。

我正在尝试运行 Access 查询并将结果复制到 Excel 工作表。

到目前为止,我已经设法打开了 Access DB 并运行查询,但我找不到有关如何将结果复制到 excel 中的任何内容,至少我找不到有效的解决方案。

有人可以指导我朝着正确的方向前进吗?

谢谢。

到目前为止,我想出了以下代码。

Sub AccessTest1()
    Dim A As Object
    Application.DisplayAlerts = False
    Set A = CreateObject("Access.Application")
    A.Visible = True
    A.OpenCurrentDatabase ("acess database path")
    A.DoCmd.OpenQuery ("query")
    Application.DisplayAlerts = True

End Sub

看看 CopyFromRecordset 方法。

将 ADO 或 DAO 记录集对象的内容复制到 工作表,从指定区域的左上角开始。

'...
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
Dim rs As Object
Set rs = A.CurrentDb().QueryDefs("QueryName").OpenRecordset()
If Not rs.EOF Then
    ws.Range("A1").CopyFromRecordset rs
End If
rs.Close

最新更新