Private Sub Worksheet_Calculate()
Dim chemin$, a As Range, im As Object
chemin = IIf([C2] = "", "", ThisWorkbook.Path & "\" & [C2])
Set a = [B4].MergeArea
Application.ScreenUpdating = False
On Error Resume Next
Me.Shapes("MonImage").Delete 'RAZ
Set im = Me.Pictures.Insert(chemin)
im.Name = "MonImage"
With im.ShapeRange
.LockAspectRatio = True 'pour conserver les proportions de l'image
.Top = a.Top
.Left = a.Left
If .Height / .Width > a.Height / a.Width Then
.Height = a.Height
Else
.Width = a.Width
End If
End With
End Sub