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

insert_module [Access macro]

option explicit

' run write_to_module afterwards.

public sub insert_module()

  dim ac as access.application
  dim db as dao.database
  dim mdb_name as string
      mdb_name = "c:\temp\inserted_module.mdb"

' Add Microsoft Visual Basic for Applications Extensibility 5.3 (0002E157-0000-0000-C000-000000000046) referencde
  dim vb_editor as vbide.vbe
  dim vb_proj   as vbide.vbProject
  dim vb_comp   as vbide.vbComponents
  dim vb_module as vbide.vbComponent

  dim module_name as string
      module_name = "ThisModuleWasInserted"


  on error resume next
  kill mdb_name
  on error goto 0

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

  set vb_editor = ac.vbe
  set vb_proj   = vb_editor.activeVBProject
  set vb_comp   = vb_proj.vbComponents

  set vb_module = vb_comp.add(vbext_ct_StdModule)
  vb_module.name = module_name

  call ac.doCmd.close (acModule, module_name, acSaveYes)

end sub