The brute force method would have been to just keep the module in the database and run it in the immediate window whenever a new table was added. But, as long as I've gone this far, I might as well put some code in to turn it into an actual query and save it for you. 
Code:
Public Sub CreateSSWPDUnion()On Error GoTo Err_CreateSSWPDUnion
Dim dbs As Database
Set dbs = CurrentDb
'define and open local unique TableName recordset and load to aTableName array
Dim strSqlTN As String
strSqlTN = "SELECT MSysObjects.Name AS TableName " & _
"FROM MSysObjects " & _
"WHERE MSysObjects.Type = 1 " & _
"AND MSysObjects.Name LIKE ""SSWPD*"""
Dim rstTN As Recordset
Set rstTN = dbs.OpenRecordset(strSqlTN, dbOpenDynaset)
'define aTableName array and variables used to load the array
Dim aTableName(100) As String
Dim limTN As Integer
Dim xTN As Integer
'get list of unique active table names and load to aTableName array
limTN = 0
rstTN.MoveFirst
Do Until rstTN.EOF
limTN = limTN + 1
aTableName(limTN) = rstTN!TableName
'Debug.Print aTableName(limTN)
rstTN.MoveNext
Loop
rstTN.Close
'Debug.Print limTN
Dim txtSelectFieldsFrom As String
Dim txtSqlUnion As String
txtFields = """ AS TableName, " & _
"Sample, NumRes, Datesave, Operator, Machine, " & _
"User1, User2, User3, User4, User5, User6, " & _
"Mean , Flags, User7, User8, User9, User10 FROM "
txtSqlUnion = "(SELECT """ & aTableName(1) & txtFields & aTableName(1) & " ) "
xTN = 2
Do Until xTN > limTN
txtSqlUnion = txtSqlUnion & "UNION (SELECT """ & aTableName(xTN) & txtFields & aTableName(xTN) & " ) "
xTN = xTN + 1
Loop
'Debug.Print txtSqlUnion
Dim qdfNew As QueryDef
Dim txtQryName As String
txtQryName = "qry_SSWPD_All2"
' turn off errors for the delete
On Error Resume Next
' delete querydef if it exists
dbs.QueryDefs.Delete (txtQryName)
' turn errors back on
On Error GoTo Err_CreateSSWPDUnion
' createquerydef command line follows
Set qdfNew = dbs.CreateQueryDef(txtQryName, txtSqlUnion)
dbs.Close
Exit_CreateSSWPDUnion:
Exit Sub
Err_CreateSSWPDUnion:
MsgBox Err.Description
Resume Exit_CreateSSWPDUnion
End Sub
NOTE 1) Change the value of txtQryName to whatever you want the permanant query to be called.
NOTE 2) This code saves the query into the database, but the new query doesn't show up in the query window for me until I do something that refreshes that window.
NOTE 3) I added the keyword "Public" on the front, so you can call this subroutine from a macro or a button on a form if you want, or you can just call it in the immediate window.
NOTE 4) You can change the subroutine name to whatever you want with a global change.
NOTE 5) If you wanted the module to execute itself automatically whenever new tables are created, you could do some kind of magic like, each time it runs, save the number of tables currently being UNIONed, and checking occasionally whether there are still only that many tables. Something along those lines.