Bonjour à tous,

J'ai cherché partout sur internet mais je ne trouve aucune solution à mon problème.
J'ai un classeur avec plusieurs feuilles. Sur chaque feuille il y a des noms d'objets, les photos (insérées par des controles image) et diverses explications (type base de données).
J'ouvre une userform par un bouton sur la première feuille, il contient une combobox1 qui correspond aux noms des feuilles, une textbox dans laquelle l'utilisateur tape le nom de l'objet recherché et un controle image qui doit donc afficher la photo ayant le même nom que la valeur tapée dans la textbox après un clic sur un bouton. J'ai une erreur lorsque je clic sur mon bouton apercu "erreur 438, propriété ou méthode non gérée par cet objet. Mon code s'arrête sur la ligne "UserForm2.Image1.Picture = Sheets(ComboBox1.Value).pht.picture " mais si je remplace "pht.picture" par le nom de l'objet cherché tout fonctionne. Le debogueur trouve pourtant la bonne valeur pour "pht". Pouvez vous me dire ce qui ne va pas svp?

Merci d'avance

DlouJ


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Apercu_Click()
Dim photo As Variant
Dim pht As Range
photo = TextBox2.Value
With Sheets(ComboBox1.Value).Range("C:C")
        Set pht = .Find(photo, LookIn:=xlValues, LookAt:=xlPart)
 
If pht Is Nothing Then
 
         MsgBox "Aucun résultat"
        Exit Sub
        Else
 
        UserForm2.Image1.Picture = Sheets(ComboBox1.Value).pht.picture
        End If
        End With
End Sub