I re-programed my DIM statement to DIM DB As DAO.Database and tried it with DAO3.6 driver and get a new fault - it now won't set the DBName line. I've (tried to) include a copy of the code to see if that helps. I'm about to retire and take up street cleaning!

I really am most grateful for all your time and trouble
Tony B
code
Option Explicit
Private Sub Form_Activate()
DBName = "Charter.mdb"
Dim DB As DAO.Database
Dim tblDef As TableDef
Dim fldDef As Field
Dim indx As Index
If MsgBox("Really delete all files?", vbOKCancel + vbCritical, "Warning Deletes ALL Files") = vbOK Then
Call DeleteFiles
End If
End Sub
Private Sub DeleteFiles()
If (Len(Dir(DBName))) > 0 Then 'Checks if there is an existing file
Kill DBName ' and removes any that file
End If
Set DB = DBEngine.Workspaces(0).CreateDatabase(DBName, dbLangGeneral)
Call CreateContactTable
MsgBox ("Datebase successfully created.")
'--- Please ensure that the file "Micosoft DAO 3.51 Object Library is ticked in Project > References.---
End Sub
Public Sub CreateContactTable()
'--Create contact table here--
Set tblDef = DB.CreateTableDef("Charter")
'--Create the fields in the charter table--
Set fldDef = tblDef.CreateField("Title", dbText, 5)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("F_Name", dbText, 12)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("S_Name", dbText, 30)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("Club", dbText, 30)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("Guest_of", dbText, 30)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("Table", dbText, 2)
tblDef.Fields.Append fldDef
Set fldDef = tblDef.CreateField("Number", dbLong, 4)
fldDef.Attributes = dbAutoIncrField
tblDef.Fields.Append fldDef
DB.TableDefs.Append tblDef
'--Add the index keys--
Set indx = tblDef.CreateIndex("iclub")
indx.Fields.Append indx.CreateField("S_Name")
indx.Fields.Append indx.CreateField("F_Name")
tblDef.Indexes.Append indx
End Sub
/code