You can use DDL to create tables, but as far as I know Access' (Jet/ACE) database engine does not support a CREATE DATABASE statement. You can use DAO to create the new database.
Public Function CreateEmptyDB(ByVal pstrNewDbPath As String) As Boolean
Dim db As DAO.Database
Dim blnRetValue As Boolean
blnRetValue = False
'dbVersion40 => 2002-2003 format '
Set db = DBEngine.CreateDatabase(pstrNewDbPath, dbLangGeneral, dbVersion40)
db.Close
Set db = Nothing
blnRetValue = True
CreateEmptyDB = blnRetValue
End Function
Once you've created the database, you can execute "CREATE TABLE" statements.
But if you already have an existing SQL Server database you want to re-create in Access, it might be easier to import the tables with an ODBC connection to SQL Server. When importing you can select tables with their data, or only the table structures.
Update: Using VBA, DoCmd.TransferDatabase can import a table from an ODBC database. This example was adapted from a sample in Access' TransferDatabase help topic:
DoCmd.TransferDatabase acImport, "ODBC Database", _
"ODBC;DSN=DataSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
& "DATABASE=pubs", acTable, "Authors", "dboAuthors", True
I added True as the StructureOnly parameter to import the table structure without the data. Change it to False if you want to import the data as well.