René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback -
 

create_form [Access macro]

option explicit 

sub create_form()

  dim mdb_file_name As String
  mdb_file_name = "c:\temp\create_form_test.mdb"
  deleteIfExists (mdb_file_name)
  
  dim db As DAO.Database

  dim ac as access.application
  dim fm as access.form

  set ac = new access.application
  set db = ac.dbEngine.workspaces(0).createDatabase(mdb_file_name, dbLangGeneral, 0)

  ac.openCurrentDatabase(mdb_file_name)

  set fm = ac.createForm()

  ' Giving the form a name:
  dim form_name_orig as string
      form_name_orig = fm.name

  ac.doCmd.close acForm, form_name_orig, acSaveYes
  ac.doCmd.rename "TheDesiredFormName", acForm, form_name_orig

  ac.quit
end sub


private sub deleteIfExists(fileToDelete As String)
  ' Extras->Verweise
  '   Check "Microsoft Scripting Runtime"
  '
  dim fso As New FileSystemObject
  dim aFile As file
 
  if (fso.FileExists(fileToDelete)) then
    Set aFile = fso.GetFile(fileToDelete)
    aFile.Delete
  end if

end sub