我有以下代码
Private Sub CommandButton1_Click()
Dim cn As Object
Dim rs As Object
Dim strSql As String
Dim strConnection As String
Set cn = CreateObject("ADODB.Connection")
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=C:\ActionList.accdb"
strSql = "SELECT * FROM Actionlist;"
cn.Open strConnection
Set rs = cn.Execute(strSql)
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
我的目的是将某个表中的所有行复制到Excel表格中。我觉得这很容易在互联网上,但我似乎无法找到它。我希望行从A2开始,因为我已经使用Excel的内置函数将访问表添加到我的工作表中。我想手动执行此操作,以添加某些过滤器。
答案 0 :(得分:0)
你需要,拥有什么,还有
for f= 0 to rs.fields.count-1
range("a1").offset(0,f).value=rs.fields(f).name
next f
range("a2").copyfromrecordset rs
答案 1 :(得分:0)
切换CopyFromRecordset()
,以便Private Sub CommandButton1_Click()
Dim Dbs As DAO.Dtabase
Dim rs As DAO.Recordset
Dim strSql As String
Set Dbs = OpenDatabase(C:\ActionList.accdb")
strSql = "SELECT * FROM Actionlist;"
Set rs = Dbs.OpenRecordset(strSql)
'Add Head lines:
for i= 0 to rs.fields.count-1
range("a1").offset(0,i).value=rs.fields(i).name
next f
'Add Data:
range("a2").CopyFromRecordset rs
'Colse resources:
rs.Close
Set rs = Nothing
Dbs.Close
Set Dbs= Nothing
End Sub
起作用:
/({example [a-z, A-Z]{3}})/g