Bear in mind that I've never used VBA in AutoCAD ...
However:
It input ~6,000,000 records in 2 to 3 minutes, which was ok but not really that many points.
More than enough to make it slow down by using a recordset
Since I am only creating new records, not appending, updating or deleting records, this idea may not apply. Any ideas or suggestions you have will be greatly appreciated.
APPENDING means creating new records!
So definitely try replacing all the recordset code with SQL append code.
Use something like this, replacing MyCSVFileName with the actual file name & tweaking if necessary
Code:
CurrentDb.Execute "INSERT INTO tblclcircles ( yxdata, xxdata, zxdata )" & _
" SELECT '" & Val(ya$) * 1000 & "', '" & Val(xa$) * 1000 & "', '" & Val(za$) * 1000 & "'" & _
" FROM MyCSVFileName;", dbFailOnError
I'm assuming each of the fields are text datatype, If numbers, remove the single quote text delimiters
Before you try changing it, add these lines before the recordset
Code:
Dim Start As Long, Finish As Long
Start = Timer
and these two lines afterwards
Code:
Finish = Timer
Debug.Print "Time taken = (Finish - Start) & " seconds"
Note the time taken (shown in immediate window)
Try the SQL append code instead and note the time taken again
Let us know the results