1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| Option Explicit
Option Base 1
Sub ListeReferences()
Dim Awbk As Workbook
Dim ref As Object, GUID As String
Dim majeure As Integer, mineure As Integer
Dim tabTitre As Variant
Dim tabVraiRef() As Variant
Dim k As Integer
Dim Sh As Worksheet
'il faut ajouter une référence à Microsoft Visual Basic for Application Extensibility
On Error GoTo Suite
ThisWorkbook.VBProject.References.AddFromGuid "{0002E157-0000-0000-C000-000000000046}", 0, 0
Suite:
Set Awbk = ActiveWorkbook
tabTitre = Array("Nom", "GUID", "Major", "Minor", "Type", "Chemin")
k = 0
'boucle sur les références
For Each ref In Awbk.VBProject.References
k = k + 1
ReDim Preserve tabVraiRef(6, k)
tabVraiRef(1, k) = ref.Name
tabVraiRef(2, k) = ref.GUID
tabVraiRef(3, k) = ref.Major
tabVraiRef(4, k) = ref.Minor
tabVraiRef(5, k) = ref.Type
tabVraiRef(6, k) = ref.FullPath
Next
'Ajout d'une feuille à la fin
Sheets.Add(After:=Sheets(Sheets.Count)).Name = "Références"
Set Sh = ActiveSheet
'Présentation et formatage
With Sh
.Range(Cells(2, 1), Cells(k + 1, 6)).Value = Application.Transpose(tabVraiRef)
With .Range(Cells(1, 1), Cells(1, UBound(tabTitre)))
.Value = tabTitre
.Font.Bold = True
.EntireColumn.AutoFit
End With
End With
End Sub |
Partager