如何使用www.example.com将Access数据库中的表格导入Excelvb.net

brqmpdu1  于 2022-12-24  发布在  .NET
关注(0)|答案(1)|浏览(124)

因此,我试图从Access导入一个特定的表到Excel工作表。
我试着记录一个宏来看看它是如何工作的,但是因为我已经知道如何用一个txt文件来做,我想它可能是类似的,但是我不能让它工作。我试了很多方法,也在谷歌上找到了一些答案,说要调暗一个连接和记录集为Dim cnn As ADODB.Connection等等,但是它在VB.Net中不工作。
也许是愚蠢的,但我不知道这一点。这是我的代码。

Dim ws As Worksheet
    Dim file As String

    ws = Globals.ThisAddIn.Application.ActiveSheet
    file = "C:/Downloads/db.accdb"
    
    With ws.QueryTables.Add("OLEDB;" & file, ws.Range("A1"), "SELECT * FROM [TableName]")
            .Name = "Source Data Table"
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .BackgroundQuery = True
            .RefreshStyle = XlCellInsertionMode.xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .PreserveColumnInfo = True
            .Refresh(False)
    End With

我真的不明白从QueryTables.Add()的连接是如何工作的,我总是在.Refresh(False)得到一个错误,所以..我尝试了一切我可以想象也期待什么宏记录器,但仍然不能理解.

owfi6suc

owfi6suc1#

看起来错误是在这一部分:"
第一个月
应该是这样的:

ws.QueryTables.Add("OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file, ws.Range("A1"), "SELECT * FROM [TableName]")

之后,数据成功添加到Excel中。

相关问题