Sub Boucle_Des_Images()
Application.ScreenUpdating = False
t = Timer
mypath = "P:\Documentations techniques\Combibloc\ACB\Paramètres_HMI\" 'votre repertoire
'mypath = Environ("USERPROFILE") & "\Downloads\" 'mon repertoire pour tester
For Each ext In Array("png", "jpg", "bmp", "jpeg", "img") 'toute sorte des images
Set sh = Sheets(CStr(ext)) 'une feuille
With sh
.Activate
With .Cells
.ColumnWidth = 40 'adjuste width & height of colonnes et lignes
.RowHeight = 200
End With
ptr = 0 'pointer
myfile = Dir(mypath & "*." & ext) 'filtrer les files du type EXT
Do While myfile <> "" 'boucle jusqu'aux tous files sont traités
s = mypath & myfile 'fullname
If ptr Mod 10 = 0 Then Application.StatusBar = sh.Name & " " & ptr: DoEvents: DoEvents 'montrer progrès sur statusbar
ptr = ptr + 1 'augmente pointer
ligne = (ptr - 1) \ 10 + 1 'ligne pour l'image
col = (ptr - 1) Mod 10 + 1 'colonne pour l'image
Set c = .Cells(ligne, col) 'mettez l'image dans cette cellule
lft = c.Left + 2 'gauche de l'image
tp = c.Top + 2 'top de l'image
wdth = c.Offset(, 1).Left - c.Left - 5 'largeur de l'image
hgth = c.Offset(1).Top - c.Top - 5 'hauteur de l'image
.Shapes.AddPicture s, 1, 1, lft, tp, wdth, hgth 'add image
DoEvents: DoEvents 'ralentir le système
myfile = Dir 'prochaine file
Loop
End With
Next
Application.ScreenUpdating = True
Application.StatusBar = ""
MsgBox "prêt : " & Format(Timer - t, "0.00\s")
End Sub