Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" And Target.Count = 1 Then
RépertoirePhoto = "c:\mesdoc\" ' adapter
nf = RépertoirePhoto & "\" & Target & ".jpg"
If Dir(nf) <> "" Then
taille = TaillePixelsImage(RépertoirePhoto, Target & ".jpg")
rap = Val(Split(taille, "x")(0)) / Val(Split(taille, "x")(1))
Me.Image1.Height = 100 ' on fixe la hauteur
Me.Image1.Width = Me.Image1.Height * rap
Me.Image1.Picture = LoadPicture(nf)
Me.Image1.PictureSizeMode = fmPictureSizeModeZoom
Else
Me.Image1.Picture = Nothing
End If
End If
End Sub
Function TaillePixelsImage(repertoire, fichier)
Set myShell = CreateObject("Shell.Application")
Set myFolder = myShell.Namespace(repertoire)
Set myFile = myFolder.Items.Item(fichier)
TaillePixelsImage = myFolder.GetDetailsOf(myFile, 26)
End Function