因此,我试图从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)
得到一个错误,所以..我尝试了一切我可以想象也期待什么宏记录器,但仍然不能理解.
1条答案
按热度按时间owfi6suc1#
看起来错误是在这一部分:"
第一个月
应该是这样的:
之后,数据成功添加到Excel中。