Avatar billede herch Nybegynder
24. juni 2009 - 10:58 Der er 2 kommentarer

Kontrol om module eksisterer

Hvordan kan jeg tjekke om et aktivt dokument har et bestemt module?
Avatar billede Wordspecialisten Nybegynder
15. juli 2009 - 15:35 #1
Hej!

Her er lidt kode, som du kan bruge til at teste på, om et aktivt dokument indeholder et bestemt vba-modul (for det er vel det, du mener):

Sub test()
'denne procedure kalder funktionen VBComponentExists med navnet på det modul, jeg vil undersøge om findes
    MsgBox VBComponentExists("modWordspecialisten")
End Sub

Public Function VBComponentExists(VBCompName As String, Optional VBProj As VBIDE.VBProject = Nothing) As Boolean
      ' This returns True or False indicating whether a VBComponent named VBCompName exists in the VBProject referenced by VBProj. If VBProj is omitted, the VBProject of the ActiveWorkbook is used.

        Dim VBP As VBIDE.VBProject
        If VBProj Is Nothing Then
            Set VBP = ActiveDocument.VBProject
        Else
            Set VBP = VBProj
        End If
        On Error Resume Next
        VBComponentExists = CBool(Len(VBP.VBComponents(VBCompName).Name))
   
End Function


Jeg kan ikke selv tage æren for løsningen, som jeg engang fandt på følgende side, hvor der står meget godt om at kode til VBA-moduler/komponenter:

http://www.cpearson.com/excel/vbe.aspx
Avatar billede herch Nybegynder
08. januar 2013 - 08:49 #2
Undskyld, det sene svar, men sådan går det, når alt skal gå lidt hurtigere, det fungerer fint - tusind 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
Kategori
Tag et kursus i Word og øg effektiviteten

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