Lista alla öppna VBA-projekt och
deras moduler


I detta tips visas hur vi kan dokumentera alla öppna VBA-projekt och deras moduler.

Glöm inte av att ange en referens "Microsoft Visual Basic for Applications Extensibility 5.3".

 

Option Explicit

 Sub Lista_Alla_Oppna_VBAProjekt()

   '© 2002 Alla rättigheter iL-Dennis

   Dim vbaProjekt As VBIDE.VBProject

   Dim vbaModul As VBIDE.VBComponent

   Dim i As Long

 

   i = 1

   'Om inte den aktiva arbetsboken är sparad.

   On Error Resume Next

    For Each vbaProjekt In Application.VBE.VBProjects

      'Här används VBE-konstanter för att kontrollera

      'om det aktuella projektet är låst eller inte.

      'vbext_pp_locked = Det aktuella projektet är låst.

      'vbext_pp_none   = Det aktuella projektet är olåst.

      If vbaProjekt.Protection = vbext_pp_none Then

         For Each vbaModul In vbaProjekt.VBComponents

            Cells(i, 1) = _

                  vbaProjekt.Filename & ":" & _

                  vbaProjekt.Name & "." & vbaModul.Name

            i = i + 1

         Next

      End If

   Next

 

   Columns("A").EntireColumn.AutoFit

End Sub