Sub Liste_Macros()
'En mode VBA clique sur Outils > Références
'Active la référence: Microsoft Visual Basic For Application Extensibility x.x
Dim deb&, i&, x&
Dim VBCmp As VBComponent
Dim cdMod As CodeModule
Dim Wb As Workbook
'Indiquer le nom du classeur ouvert
Set Wb = ThisWorkbook
x = 1
i = 2
For Each VBCmp In Wb.VBProject.VBComponents
Set cdMod = VBCmp.CodeModule
With cdMod
deb = .CountOfDeclarationLines + 1
Do Until deb >= .CountOfLines
'Nom des macros
Feuil2.Cells(i, 1) = .ProcOfLine(deb, vbext_pk_Proc)
deb = deb + _
.ProcCountLines(.ProcOfLine(deb, _
vbext_pk_Proc), vbext_pk_Proc)
x = x + 1
i = i + 1
Loop
End With
Next VBCmp
End Sub