I am trying to convert some code in DAO to ADO in Access and I am having trouble with creating something similar to the CreateQueryDef command.
Here is the code using DAO:
Sub ExportExcel()
Dim dbs As DAO.Database
Dim qdf As DAO.QueryDef
Dim rst As DAO.Recordset
Dim sqlstr As String
Dim xlapp As Object
Set dbs = CurrentDb
sqlstr = "SELECT * FROM bids WHERE leasenum = 'G04377'"
Set qdf = dbs.CreateQueryDef("Temp", sqlstr)
Set rst = qdf.OpenRecordset()
If rst.RecordCount > 0 Then
DoCmd.TransferSpreadsheet acExport,
acSpreadsheetTypeExcel5, "Temp", "c:\DRA1"
Set xlapp = CreateObject("excel.Application"![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
xlapp.Visible = True
xlapp.Workbooks.Open "c:\DRA1"
Else
MsgBox "No records selected", vbInformation, "Export
to Excel"
Exit Sub
End If
DoCmd.DeleteObject acQuery, "Temp"
End Sub
Here is what I have so far using ADO:
Sub ExportExcelADO()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sqlstr As String
Set cnn = CurrentProject.Connection
sqlstr = "SELECT * FROM bids WHERE leasenum = 'G04377'"
rs.Open sqlstr, cnn
Debug.Print rs.RecordCount
End Sub
Any help or tips greatly appreciated
Here is the code using DAO:
Sub ExportExcel()
Dim dbs As DAO.Database
Dim qdf As DAO.QueryDef
Dim rst As DAO.Recordset
Dim sqlstr As String
Dim xlapp As Object
Set dbs = CurrentDb
sqlstr = "SELECT * FROM bids WHERE leasenum = 'G04377'"
Set qdf = dbs.CreateQueryDef("Temp", sqlstr)
Set rst = qdf.OpenRecordset()
If rst.RecordCount > 0 Then
DoCmd.TransferSpreadsheet acExport,
acSpreadsheetTypeExcel5, "Temp", "c:\DRA1"
Set xlapp = CreateObject("excel.Application"
xlapp.Visible = True
xlapp.Workbooks.Open "c:\DRA1"
Else
MsgBox "No records selected", vbInformation, "Export
to Excel"
Exit Sub
End If
DoCmd.DeleteObject acQuery, "Temp"
End Sub
Here is what I have so far using ADO:
Sub ExportExcelADO()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sqlstr As String
Set cnn = CurrentProject.Connection
sqlstr = "SELECT * FROM bids WHERE leasenum = 'G04377'"
rs.Open sqlstr, cnn
Debug.Print rs.RecordCount
End Sub
Any help or tips greatly appreciated