【发布时间】:2018-09-25 12:00:18
【问题描述】:
我想通过 Excel VBA 读取 Access 表并打印每一行每一列的内容。
到目前为止,我有以下代码,但它只会打印第一行的内容。如何让它打印所有行?
我的测试表有 2 列(因此是 For i= 0 to 1)和 4 行,但实际上我可能会有可变数量的列和行,所以最好代码应该涵盖这一点。
Sub get_column()
Dim cn As Object
Dim rs As Object
Dim strSql As String
Dim strConnection As String
Dim i As Long
Set cn = CreateObject("ADODB.Connection")
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=M:\test_database.accdb;" '& _
'"User Id=admin;Password=admin"
strSql = "SELECT Table1.CC_Number, Table1.Region FROM Table1;"
cn.Open strConnection
Set rs = cn.Execute(strSql)
For i = 0 To 1
Debug.Print rs.Fields(i)
Next i
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
【问题讨论】: