I'm guessing you want to check in Access right?
well if so, you got two ways I can think of off the top of my head....
First up, similar to your method but query Access sys table instead, so...
SELECT MSysObjects.Name
FROM MSysObjects
WHERE (((MSysObjects.Name)="table8"))
You can then use that SQL and wrap an IF around it either in a query or in VBA.
Or you could, in VBA, attempt to reference the table and trap for the error if it does not exist. So...
dim blnTableFound as boolean
On error goto errorhandler
blnTableFound = true
debug.print currentdb.tabledefs("table8").name
errorhandler:
select case err.number
case 3265
blnTableFound = false