Avatar billede henrik13 Nybegynder
09. august 2003 - 14:46 Der er 9 kommentarer og
1 løsning

Delete af Frm,Rep,Mcr og mod

Jeg søger en vba kode til at delete af Frm, Rep, Mcr og mod, i en anden database med navnet "Test5.mdb". Kun danske svar.
På forhånd tak.
Henrik13
Avatar billede terry Ekspert
09. august 2003 - 21:35 #1
Hej Henrik>Hvis det skal vær på dansk, så er 15 points ALT for lidt :o)
Avatar billede henrik13 Nybegynder
09. august 2003 - 21:57 #2
Ok terry
Nu har jeg fordoblet det.  :o)
Avatar billede terry Ekspert
09. august 2003 - 22:04 #3
Private Sub Command0_Click()
Dim acc As Access.Application
Dim obj As AccessObject, dbs As Object

    Set acc = CreateObject("Access.Application")

    acc.OpenCurrentDatabase "C:\test5.mdb"

    Set dbs = acc.Application.CurrentProject
   
    For Each obj In dbs.AllForms
        If obj.IsLoaded = True Then acc.DoCmd.Close acForm, obj.Name

        acc.DoCmd.DeleteObject acForm, obj.Name
           
    Next obj

    For Each obj In dbs.AllReports
        If obj.IsLoaded = True Then acc.DoCmd.Close acReport, obj.Name

        acc.DoCmd.DeleteObject acReport, obj.Name
           
    Next obj
   
    For Each obj In dbs.AllMacros
        If obj.IsLoaded = True Then acc.DoCmd.Close acMacro, obj.Name
       
        acc.DoCmd.DeleteObject acMacro, obj.Name
           
    Next obj
   
    For Each obj In dbs.AllModules
        If obj.IsLoaded = True Then acc.DoCmd.Close acModule, obj.Name
       
        acc.DoCmd.DeleteObject acModule, obj.Name
           
    Next obj
   
    acc.CloseCurrentDatabase
    Set acc = Nothing

End Sub

Håber det kan bruges :o)
Avatar billede henrik13 Nybegynder
09. august 2003 - 22:33 #4
>> terry
Det gig godt i formulare, rapporter og makroer. Men det gik galt i moduler, jeg fik følgende fejl:
Object doesn't support this property or method
Da jeg prøvede fejlfinding, fik jeg avide at jeg ikke kunne bruge ELSE uden IF i din IF sætning, og det fatter jeg ikke.
Vh Henrik13
Avatar billede terry Ekspert
09. august 2003 - 22:42 #5
Prøve kun med moduler!

Private Sub Command0_Click()
Dim acc As Access.Application
Dim obj As AccessObject, dbs As Object

    Set acc = CreateObject("Access.Application")

    acc.OpenCurrentDatabase "C:\test5.mdb"

    Set dbs = acc.Application.CurrentProject
   

   
   
    For Each obj In dbs.AllModules
       
        acc.DoCmd.DeleteObject acModule, obj.Name
           
    Next obj
   
    acc.CloseCurrentDatabase
    Set acc = Nothing

End Sub
Avatar billede terry Ekspert
09. august 2003 - 22:43 #6
nu er der ingen IF sætning
Avatar billede henrik13 Nybegynder
09. august 2003 - 23:00 #7
>> terry
det lysner, nu sletter den alle moduler, men jeg ville, ligesom med de andre, kunne skrive modulnavnet der skal slettes, i dette tilfælde "ModPassword"
Avatar billede terry Ekspert
09. august 2003 - 23:05 #8
Henrik>Det var ikke en del af din sp.!

Kan du ikke selv implementer en inputbox, eller endnu bedre, en form hvor du har en listbox der viser alle objekter hvor du kan vælge en eller flere der skal slettes! Det kan ikke være så svært :o)
Avatar billede henrik13 Nybegynder
09. august 2003 - 23:12 #9
>> terry
Det gør jeg bare, det løkkes bare for mig med Frm, rpt og mcr. Så det sidste løser jeg selv, eller laver et spørgsmål til. da der er allige vel 2 sp mere hvor jeg ikke kan finde løsningen selv. Men tak for indsantsen. En glad mand.
Avatar billede terry Ekspert
09. august 2003 - 23:19 #10
OK, tak!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester