Activesheet.pictures

Bonjour,

Je cherche à remplacer une image en vba, j'ai mis ce code mais il crée une image sans remplacer l'image voulu. Auriez vous une idée ? Merci.

Dim chemin, perso, monimage As String

chemin = "C:\Users\benoi\Desktop\Photos\"
perso = Range("F5").Value & " " & Range("F6").Value
monimage = chemin & perso & ".jpg"
PasPhoto = chemin & "PasPhoto" & ".jpg"

 If Dir(monimage) <> "" Then
    With ActiveSheet.Shapes.Range(Array("Picture 2"))
    Pictures.Insert (monimage)
    End With
 Else
    With ActiveSheet.Shapes.Range(Array("Picture 2"))
    Pictures.Insert (PasPhoto)
    End With
 End If

Bonjour,

à tester,

Sub test2()
Dim ole As OLEObject
Dim chemin As String
Dim perso As String, monimage As String

chemin = "C:\Users\benoi\Desktop\Photos\"
perso = Range("F5").Value & " " & Range("F6").Value
monimage = chemin & perso & ".jpg"

Set ole = ActiveSheet.OLEObjects("image1")
If Dir(monimage) <> "" Then
 ole.Object.Picture = LoadPicture(monimage)
' ole.Object.AutoSize = True
Else
 ole.Object.Picture = LoadPicture("")
End If
End Sub

Merci sabV, mais j'ai ce problème :

erreur2 erreur1

Bonjour,

essayé sans espace dans le nom

Set ole = ActiveSheet.OLEObjects("image2")

J'ai trouvé mon erreur,

Le problème venait du fait que j'avais inséré une image (onglet insertion) alors qu'il fallait insérer une image (contrôle ActiveX).

Ton code fonctionne sabV, un grand merci à toi.

Rechercher des sujets similaires à "activesheet pictures"