Comment afficher une image au survol d'une cellule
Résolu
Aschille
Messages postés
32
Statut
Membre
-
Aschille Messages postés 32 Statut Membre -
Aschille Messages postés 32 Statut Membre -
Bonjour,
J'ai cherché un peu partout sur le net et il semble qu'il existait une fonction dans les versions antérieures d'Excel une façon simple d'y remédier (menu contextuel, format de commentaire). Sauf que là, le seul onglet qui m'est proposé dans cette boite de dialogue est l'onglet police, ni texture ni image à insérer comme un fond.
Je pense qu'il est toujours possible de passer par VBA pour arriver à cette fin mais, n'ayant aucune notion en programmation, je sollicite votre aide qui est plus que bienvenue.
Cordialement.
J'ai cherché un peu partout sur le net et il semble qu'il existait une fonction dans les versions antérieures d'Excel une façon simple d'y remédier (menu contextuel, format de commentaire). Sauf que là, le seul onglet qui m'est proposé dans cette boite de dialogue est l'onglet police, ni texture ni image à insérer comme un fond.
Je pense qu'il est toujours possible de passer par VBA pour arriver à cette fin mais, n'ayant aucune notion en programmation, je sollicite votre aide qui est plus que bienvenue.
Cordialement.
A voir également:
- Excel afficher une image au survol d'une cellule
- Déplacer une colonne excel - Guide
- Liste déroulante excel - Guide
- Bloquer une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
6 réponses
Bonsoir
un exemple
https://www.cjoint.com/?3EluoZfVmWZ
nota: il faut "dézipper" la pièce jointe et non "ouvrir" le zip
Michel
un exemple
https://www.cjoint.com/?3EluoZfVmWZ
nota: il faut "dézipper" la pièce jointe et non "ouvrir" le zip
Michel
Re,
Si tes images sont carrées, tu simplifier le code de Michel comme suit :
La dimension des images est déterminée par :
Cordialement
Patrice
Si tes images sont carrées, tu simplifier le code de Michel comme suit :
Sub creer_image_survol()
Dim chemin As String, Col As Byte, Lig As Byte, Fin As Integer, Cptr As Integer
Dim design As String, image As String
Dim pict As IPictureDisp
chemin = ThisWorkbook.Path & "\"
Col = Range("start").Column
Lig = Range("start").Row
Fin = Range("start").End(xlDown).Row
For Cptr = Lig To Fin
image = Cells(Cptr, Col)
design = chemin & image
'prend en compte le format de la photo
If Dir(design & ".png") <> "" Then image = image & ".png"
If Dir(design & ".jpg") <> "" Then image = image & ".jpg"
If Dir(design & ".jpeg") <> "" Then image = image & ".jpeg"
If Dir(design & ".gif") <> "" Then image = c & ".gif"
Set pict = LoadPicture(chemin & image)
'construit et remplit le commentaire
With Cells(Cptr, Col)
.ClearComments
.AddComment
With .Comment.Shape
.Fill.UserPicture chemin & image
.LockAspectRatio = msoFalse
.Height = 300
.Width = 300
End With
.Comment.Visible = False
End With
Next
End Sub
La dimension des images est déterminée par :
.Height = 300 .Width = 300--
Cordialement
Patrice
Merci pour la rapidité de ta réponse Michel. En voyant le résultat dans ton exemple je ne peux qu'être optimiste pour la résolution de mon problème.
J'ai copié tes lignes de codes dans mon classeur, attribué un bouton à l'exécution de celles ci, et mis une image avec le même nom que le contenu en texte d'une des cellules. Néanmoins, le problème persiste.
Le débogage me renvoie à cette ligne de code :
Col = Range("start").Column
Les images dans mon cas par contre correspondent à la colonne A.
Une idée ?
J'ai copié tes lignes de codes dans mon classeur, attribué un bouton à l'exécution de celles ci, et mis une image avec le même nom que le contenu en texte d'une des cellules. Néanmoins, le problème persiste.
Le débogage me renvoie à cette ligne de code :
Col = Range("start").Column
Les images dans mon cas par contre correspondent à la colonne A.
Une idée ?
Comme c'est indiqué sur la Feuille 1 du fichier de Michel, la première cellule qui doit recevoir la première image doit être nommée "start"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question