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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
| Sub Recense_Shapes()
Dim Shp As Shape
Dim Wsh As Worksheet
Dim Tab_Shapes(1 To 2, 1 To 25) As Variant
Dim Mess As String
Dim i As Byte
For i = 1 To 25
Tab_Shapes(1, i) = 0
Tab_Shapes(2, i) = ""
Next
Mess = "Pour le classeur " & ActiveWorkbook.Name & vbCrLf & vbCrLf & _
"Les Objets Shapes recensés sont : " & vbCrLf & vbCrLf
For Each Wsh In ActiveWorkbook.Worksheets
Wsh.Activate
For Each Shp In ActiveSheet.Shapes
Select Case Shp.Type
Case -2
Tab_Shapes(1, 1) = Tab_Shapes(1, 1) + 1
Tab_Shapes(2, 1) = "Type de forme mixte"
Case 1
Tab_Shapes(1, 2) = Tab_Shapes(1, 2) + 1
Tab_Shapes(2, 2) = "Forme automatique"
Case 2
Tab_Shapes(1, 3) = Tab_Shapes(1, 3) + 1
Tab_Shapes(2, 3) = "Légende"
Case 3
Tab_Shapes(1, 4) = Tab_Shapes(1, 4) + 1
Tab_Shapes(2, 4) = "Graphique"
Case 4
Tab_Shapes(1, 5) = Tab_Shapes(1, 5) + 1
Tab_Shapes(2, 5) = "Commentaire"
Case 5
Tab_Shapes(1, 6) = Tab_Shapes(1, 6) + 1
Tab_Shapes(2, 6) = "Forme libre"
Case 6
Tab_Shapes(1, 7) = Tab_Shapes(1, 7) + 1
Tab_Shapes(2, 7) = "Groupe"
Case 7
Tab_Shapes(1, 8) = Tab_Shapes(1, 8) + 1
Tab_Shapes(2, 8) = "Objet OLE incorporé"
Case 8
Tab_Shapes(1, 9) = Tab_Shapes(1, 9) + 1
Tab_Shapes(2, 9) = "Contrôle de formulaire"
Case 9
Tab_Shapes(1, 10) = Tab_Shapes(1, 10) + 1
Tab_Shapes(2, 10) = "Trait"
Case 10
Tab_Shapes(1, 11) = Tab_Shapes(1, 11) + 1
Tab_Shapes(2, 11) = "Objet OLE lié"
Case 11
Tab_Shapes(1, 12) = Tab_Shapes(1, 12) + 1
Tab_Shapes(2, 12) = "Image liée"
Case 12
Tab_Shapes(1, 13) = Tab_Shapes(1, 13) + 1
Tab_Shapes(2, 13) = "Objet de contrôle OLE"
Case 13
Tab_Shapes(1, 14) = Tab_Shapes(1, 14) + 1
Tab_Shapes(2, 14) = "Image"
Case 14
Tab_Shapes(1, 15) = Tab_Shapes(1, 15) + 1
Tab_Shapes(2, 15) = "Espace résevé"
Case 15
Tab_Shapes(1, 16) = Tab_Shapes(1, 16) + 1
Tab_Shapes(2, 16) = "Effet de texte"
Case 16
Tab_Shapes(1, 17) = Tab_Shapes(1, 17) + 1
Tab_Shapes(2, 17) = "Support"
Case 17
Tab_Shapes(1, 18) = Tab_Shapes(1, 18) + 1
Tab_Shapes(2, 18) = "Zone de texte"
Case 18
Tab_Shapes(1, 19) = Tab_Shapes(1, 19) + 1
Tab_Shapes(2, 19) = "Ancre de script"
Case 19
Tab_Shapes(1, 20) = Tab_Shapes(1, 20) + 1
Tab_Shapes(2, 20) = "Tableau"
Case 20
Tab_Shapes(1, 21) = Tab_Shapes(1, 21) + 1
Tab_Shapes(2, 21) = "Zone de dessin"
Case 21
Tab_Shapes(1, 22) = Tab_Shapes(1, 22) + 1
Tab_Shapes(2, 22) = "Diagramme"
Case 22
Tab_Shapes(1, 23) = Tab_Shapes(1, 23) + 1
Tab_Shapes(2, 23) = "Encre"
Case 23
Tab_Shapes(1, 24) = Tab_Shapes(1, 24) + 1
Tab_Shapes(2, 24) = "Commentaire manuscrit"
Case 24
Tab_Shapes(1, 25) = Tab_Shapes(1, 25) + 1
Tab_Shapes(2, 25) = "Graphique SmartArt"
End Select
Next Shp
Next Wsh
For i = 1 To 25
If Tab_Shapes(1, i) <> 0 Then
Mess = Mess & Tab_Shapes(1, i) & " de type " & Tab_Shapes(2, i) & vbCrLf
End If
Next
MsgBox Mess, vbInformation, " Listes des shapes"
End Sub |