Well, my mistake. I forgot to append the newly created table to tabledefs collection. And, if you create a new table within the same database, some modifications must be done:
Public Function addnewspec()
On error goto addnewspec_err
Dim dbOriginal As Database
Dim tdfsOriginal As TableDefs
Dim tblOriginal As TableDef
Dim tblDestination As TableDef
Dim fldOriginal As Field
Dim fldDestination As Field
Set dbOriginal = OpenDatabase("c:\temp\db1.mdb"
Set tdfsOriginal = dbOriginal.TableDefs
Set tblOriginal = tdfsOriginal("Blankstrut"

Set tblDestination = dbOriginal.CreateTableDef("newspec"
For Each fldOriginal In tblOriginal.Fields
Set fldDestination = tblDestination.CreateField(fldOriginal.Name, fldOriginal.Type, fldOriginal.Size)
tblDestination.Fields.Append fldDestination
Next
On error resume next 'ignore error in the next line
tdfsOriginal.delete ("newspec"

'delete "newspec" if exists
On error goto addnewspec_err
tdfsOriginal.append tblDestination
addnewspec_exit:
exit sub
addnewspec_err:
msgbox err.description
resume addnewspec_exit
End Function
I included error handling, because if the "newspec" table already exists when you run the procedure, an error will occur when you try to append the newly created table to tabledefs collection. So the procedure first deletes the existing "newspec" and then appends the new one.
I hope this will now work for you. Let me know.
Mangro