Affichage d'image

Hawkeye56

XLDnaute Junior
Bonjour le forum :)

Je suis en train de me faire un fichier répertoriant mes DVD (250 titres environ) et j'aimerai pouvoir illustrer chaque titre avec l'image de leur jaquette.

Il existe la solution du commentaire mais elle ne me satisfait pas.

J'ai pensé à un bouton pour déclencher l'affichage d'une fenêtre contenant la jaquette mais je ne sais pas comment faire...sachant que la position de chaque film peut varier dans le tableau car ils sont triés par ordre alphabétique.

Je suis ouvert à vos propositions, en vous en remerciant par avance.:)
 

Hawkeye56

XLDnaute Junior
Re : Affichage d'image

Bonjour Wilfried42 :)

Je n'ai pas réussi à utiliser les fichiers mis en ligne.

Ce que je voudrais c'est que lorsqu'on clique sur la cellule contenant le titre du film (ou bien si on actionne un bouton situé face au titre du film), une fenêtre contenant la jaquette du film concerné apparaisse.

Merci
 

Pièces jointes

  • DVDtest.xls
    14.5 KB · Affichages: 76

Hawkeye56

XLDnaute Junior
Re : Affichage d'image

Bonsoir Tatiak

Oui, c'est le résultat que je souhaite obtenir :)

Il ne me reste plus qu' à adapter ta macro à mon fichier et là c'est pas du tout cuit étant donné le niveau de ta macro et et mon niveau en VBA...mais je vais essayer.
Un grand merci! :)
 

jeanpierre

Nous a quitté
Repose en paix
Re : Affichage d'image

Bonsoir Wilfried_42, tatiak, Hawkeye56,

Malheureusement, il ne te reste que 2 solutions, soit mettre ton idée en attente, soit te coller à corps perdu sur les solutions proposées et dans ce cas poser les questions au fur et à mesure de tes soucis.

Il n'y a pas plus simple malheureusement.

Bon courage en attendant.

Jean-Pierre
 

Sylvain59

XLDnaute Occasionnel
Re : Affichage d'image

Bonjour
Voici une solution qui m'avait été donnée par kjin et que j'ai réussi à adapter à mes besoins (il faut que les images soient sur D )pourtant mon niveau VBA est proche de Zéro
J'espère que cela pourra t'aider

A+
 

Pièces jointes

  • Classeur1-4.xls
    27 KB · Affichages: 106
  • Classeur1-4.xls
    27 KB · Affichages: 108
  • Classeur1-4.xls
    27 KB · Affichages: 115

Hawkeye56

XLDnaute Junior
Re : Affichage d'image

Merci Tatiak,

Oui, tes explications me permettent de mieux comprendre.:)

Par contre, il y a un truc qui m'échappe complètement c'est le lien entre le titre du film (ds mon cas) et le nom du fichier représentant la jaquette.

Ou alors je n'ai peut-être pas bien saisi la structure de ton catalogue de livres
D' ou sortent les fichiers "images" qui apparaissent lors du double clic? :confused:
 

Hawkeye56

XLDnaute Junior
Re : Affichage d'image

Bonjour Tatiak, le forum

Après de nombreuses tentatives je dois reconnaître que je n'arrive à rien :(

J'ai tenté d'adapter ton code:
j'ai changé l'adresse de la ref de l'image (car en colonne A dans mon tableau) et renommé le Userform1 en Userform 2
Ce qui donne:

Const ColRef = 1 'n° de la colonne contenant la référence de la photo
'ici la référence est en colonne A donc la valeur est : 1

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' s'exécute au double-clic
Dim Image As String, Ref As String
If Not Intersect(Target, Range("A:H")) Is Nothing Then ' quand on clique dans les colonnes
' de A à H
' pour afficher une jaquette dans une fenêtre au milieu de l'écran
If Target.Row > 1 Then 'si la ligne cliquée est supérieure à 1
Ref = Cells(Target.Row, ColRef).Value 'la valeur de la référence de la photo
Image = ActiveWorkbook.Path & "\" & Ref & ".gif" 'ici on compose le chemin et le nom de la photo avec l'extension gif
' puis on teste son existence. Si le fichier n'existe pas, on teste d'autres extensions : jpg,bmp,gif
If Not ExisteGIF(Image) Then Image = ActiveWorkbook.Path & "\" & Ref & ".JPG"
If Not ExisteGIF(Image) Then Image = ActiveWorkbook.Path & "\" & Ref & ".BMP"
If Not ExisteGIF(Image) Then Image = ActiveWorkbook.Path & "\PasImage.GIF"
'si pas trouvé on prend l'image par défaut "PasImage.gif" et on la charge vers l'Usf2
UserForm2.Image1.Picture = LoadPicture(Image)
'on inscrit le nom de la photo dans l'entête de l'Usf
UserForm2.Caption = Target.Value
' on affiche l'Usf
UserForm2.Show
End If
Cancel = True 'pour éviter de laisser le focus dans la case cliquée
End If
End Sub


J'ai copié ta fonction dans le module 1:

Public Function ExisteGIF(Image As String) As Boolean
Dim tatiak As Object
Set tatiak = CreateObject("Scripting.FileSystemObject")
ExisteGIF = tatiak.FileExists(Image)
End Function

J'ai crée un UserForm N°2

ET IL NE SE PASSE STRICTEMENT RIEN,

Même pas un message d'erreur.
Quand je double clique sur le titre du film le curseur apparait comme pour saisir du texte.

Je sèche lamentablement :confused:
 

Hawkeye56

XLDnaute Junior
Re : Affichage d'image

Bonjour,

Sans avoir changé qui que ce soit, maintenant j'ai un message d'erreur:

"Erreur d'exécution 10004" "Erreur définie par l'application ou par l'objet"

La ligne incriminée est:

Ref = Cells(Target.Row, ColRef).Value 'la valeur de la référence de la photo

:confused:
 

Statistiques des forums

Discussions
312 017
Messages
2 084 655
Membres
102 628
dernier inscrit
alexduf971