Andrew hat eine Arbeitsmappe mit einer guten Anzahl von Makros. Er möchte eine Liste aller darin enthaltenen Makros erstellen und fragt sich, ob es einen Weg gibt, die Aufgabe zu erfüllen.

In Excel gibt es keine Möglichkeit, eine Liste von Makros zu erstellen. Sie können jedoch ein Makro erstellen, in dem Ihre Makros aufgelistet sind. (Klingt überflüssig, nicht wahr?)

Betrachten Sie als Beispiel das folgende Makro, das alle Projekte in Ihrer Arbeitsmappe durchläuft, um alle Makronamen zu sammeln und in ein Arbeitsblatt einzufügen:

Sub ListMacros()

Dim VBComp As VBComponent     Dim wsTarget As Worksheet     Dim StartLine As Long     Dim iRow As Integer

Application.ScreenUpdating = False

Set wsTarget = Worksheets.Add     wsTarget.Range("A1") = "Macro"

wsTarget.Range("A1").Font.Bold = True     With wsTarget.Range("A1").Borders(xlEdgeBottom)

.LineStyle = xlContinuous         .ColorIndex = 0         .TintAndShade = 0         .Weight = xlThin     End With

iRow = 2

For Each VBComp In ThisWorkbook.VBProject.VBComponents         With VBComp.CodeModule             StartLine = .CountOfDeclarationLines + 1             Do Until StartLine >= .CountOfLines                 wsTarget.Cells(iRow, 1) = _                   .ProcOfLine(StartLine, vbext_pk_Proc)

iRow = iRow + 1                 StartLine = StartLine + _                   .ProcCountLines(.ProcOfLine(StartLine, _                   vbext_pk_Proc), vbext_pk_Proc)

Loop         End With     Next VBComp

wsTarget.Range("A1").EntireColumn.AutoFit     Application.ScreenUpdating = True End Sub

Um dieses Makro verwenden zu können, müssen Sie sicherstellen, dass Sie über den Microsoft VBA-Erweiterungsreferenzsatz verfügen. Gehen Sie dazu folgendermaßen vor:

  1. Wählen Sie im VBA-Editor im Menü Extras die Option Referenzen. Das Dialogfeld Referenzen wird angezeigt.

  2. Scrollen Sie durch die Liste der verfügbaren Referenzen und stellen Sie sicher, dass das Kontrollkästchen Erweiterbarkeit von Microsoft Visual Basic für Applikationen aktiviert ist. (Möglicherweise befindet sich am Ende der Referenz eine Versionsnummer, die jedoch mit den angegebenen Wörtern beginnen sollte.) (Siehe Abbildung 1.)

  3. Schließen Sie das Dialogfeld.

Sie müssen auch Ihre Trust Center-Einstellungen schnell ändern.

Befolgen Sie diese Schritte:

  1. Zeigen Sie den Registerkarte Entwickler des Menübands an.

  2. Klicken Sie in der Gruppe Code auf das Tool Makrosicherheit. Excel zeigt das Dialogfeld Trust Center mit den links ausgewählten Optionen für die Makroeinstellungen an. (Siehe Abbildung 2.)

  3. Stellen Sie sicher, dass die Option Vertrauenswürdiger Zugriff auf das VBA-Projektobjektmodell ausgewählt ist.

  4. OK klicken.

Wenn Sie das Makro ausführen, fügt es Ihrer Arbeitsmappe ein neues Arbeitsblatt hinzu und listet dann die Namen aller Makros in allen Modulen in der Arbeitsmappe auf.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (5225) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365. Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: