Bonjour MDO,
Cela ne semble pas vous avoir trop pénalisé depuis le temps (1 mois), est-ce vraiment utile
Sinon voici une routine que j'utilise pour autre chose et adaptée à votre demande
Sub RemplacerLogo()
Dim Sht As Worksheet
Dim Shp As Shape, ShpRng As ShapeRange
Dim vWidth As Long, vHeight As Long, vLeft As Long, vTop As Long
Dim Cel As Range
' Pour chaque feuille
For Each Sht In ActiveWorkbook.Sheets
Sht.Activate
' Pour chaque image
For Each Shp In Sht.Shapes
If InStr(1, Shp.Name, "Picture", vbTextCompare) = 0 And _
InStr(1, Shp.Name, "Logo", vbTextCompare) = 0 Then GoTo NextShp
' Récupérer les dimension
'vWidth = Shp.Width: vHeight = Shp.Height
' Récupérer la position
vLeft = Shp.Left: vTop = Shp.Top
' Supprimer l'ancien logo après avoir pris les dimensions
Shp.Cut
Sht.Pictures.Paste.Select
With Selection
.Left = vLeft: .Top = vTop
.Name = "Logo"
End With
NextShp:
Next Shp
Next Sht
End Sub
A+