Thanks a lot BitBlt! I got it to work using QueryDefs :)
All I had to do is create the temporary table in the backend table, which made updating much easier, rather than updating a remote table with a local table. Then the update worked fine using the QueryDefs method.
Now I just have to do this throughout my whole database, all in the name of security.
There isn't a lot of information on how to do this on the web so I've posted my code syntax for anyone else looking to do this.
Set up the path to the back-end database:
Dim path As String
path = "C:\BackEndDatabase.mdb"
Set the database to the back-end database:
Set db = OpenDatabase(path)
Dim qDef As QueryDef
Create the update query in the back-end database using QueryDefs:
Set qDef = db.QueryDefs("UpdateQueryInBackEnd")
Within my queries that created the temp table, I added IN '"& path &"' to create the temporary table in the back-end database:
DoCmd.RunSQL ("SELECT DISTINCT [TBLs] INTO TEMP IN '" & path & "' FROM [TBLs] IN '" & path & "' WHERE [. . .] ;")
Now when updating the tables using QueryDefs, it worked fine:
qDef.sql = "UPDATE TBL1, TEMP SET TBL1.Score = [TEMP]![NewScore] WHERE [. . .]"
qDef.Execute
qDef.Close
Lesson learned: Insert and Update queries do not work with DoCmd.RunSql when inserting into or updating a remote database. These only work when QueryDefs are used.
Thanks,
Cleo123
PS. I also found this website very useful: http://www.upsizing.co.uk/Art26_RecordSets.aspx#top