Hi All,
I have the following code. I posted about it yesterday and then found a way to get it working. It worked for a few hours and now doesn't want to play ball, hoping one of you can help me please.
Sub ExportData()
'Declaring the necessary variables.
Dim cnn As ADODB.Connection 'dim the ADO collection class
Dim rs As ADODB.Recordset 'dim the ADO recordset class
Dim dbPath As String
Dim SQL As String
Dim var As Range
Dim ws As Worksheet
Dim TableName As String
Dim ArchiveTable As String
'add error handling
On Error GoTo errHandler:
'Disable screen flickering.
Application.ScreenUpdating = False
'clear the values from the worksheet
'get the path to the database
dbPath = Sheet5.Range("I3").Value
'set the search variable
Set ws = Worksheets("Audit")
Set var1 = ws.Range("C2")
TableName = "[" & var1 & " Current" & "]"
'set the search variable
Set cnn = New ADODB.Connection ' Initialise the collection class variable
'Connection class is equipped with a -method- named Open
'--4 aguments-- ConnectionString, UserID, Password, Options
'ConnectionString formula--Key1=Value1;Key2=Value2;Key_n=Value_n;
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & dbPath
ArchiveTable = "[" & var1 & " Archive" & "]"
SQL = "INSERT INTO" & " " & ArchiveTable & _
"Select * FROM" & TableName
Debug.Print SQL
cnn.Execute SQL
SQL = "DELETE FROM" & ArchiveTable
Debug.Print SQL
cnn.Execute SQL
Set rs = Nothing
Set cnn = Nothing
Call PushTableToAccess
'Enable the screen.
Application.ScreenUpdating = True
'In case of an empty recordset display an error.
'error handler
On Error GoTo 0
Exit Sub
errHandler:
'clear memory
Set cnn = Nothing
End Sub
The bit of code that doesn't seem to work is the movement from table to table below:
SQL = "INSERT INTO" & " " & ArchiveTable & _
"Select * FROM" & TableName
Debug.Print SQL
cnn.Execute SQL
It show the below in the immediate box
INSERT INTO [LHR Archive]Select * FROM[LHR Current]
Any help is greatly appreciated.
Thanks.
Bookmarks