affichage de petits dessins jpg

utilisateur_médiocre

XLDnaute Occasionnel
bonjour le forum

est-il possible de faire apparaître dans une cellule un petit dessin jpg choisi dans un répertoire en fonction de la valeur d'une autre cellule.

merci
 

Staple1600

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re



Problème résolu

(j'avais pas les yeux en face des trous)

Mais après un bon café :rolleyes:


edit : bonjour JCGL

edit 2: en fait j'avais qu'un oeil en face des trous (lol)

la modif de JCGL est la bonne (la mienne était trop radicale..)


edit: Autre version plus haut dans le fil.
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re,
Salut JP,

Comme je pense que le fil est résolu...

Je sais maintenant sur qui je peux compter pour aider un papy, comme moi, qui était près à lâcher XL mais que j'ai "forcé" à continuer... (Merci aussi à Staple)

Merci à utilisateur_médiocre pour sa persévérance et que cela serve de "leçon" aux moussaillons arf

En tout cas pour moi, c'est un petit bonheur :)

"Un petit bonheur par jour vaut mieux qu'un grand bonheur par an"

A+
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re,

Ah ben oui mais avec TA modif, tu ne peux peux avoir qu'une image.... par tableau

Jette un oeil sur ma modif de 14:23... Elle te permet de conserver les images.

Au plaisir de te croiser sur un autre fil
 

Staple1600

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re

edit :
très bien, c'est exactement ce que j'attendais mais où sont passées les images!!!

Les images sont stockées dans le classeur dans la feuille images
(ou onglet images si tu préfères)
(feuille que l'on peut masquer ou pas) -> Format/Feuille/Afficher

Voici un petit plus

Une macro qui permet de renommer les images facilement


J'ai renommé les images dans le code VBA avec leur nom de fichier.jpg


->JCGL: j'ai un doute (je reviens)
Ta modif est OK pour conserver plusieurs images ... mais
doute confirmé:
si on change l'image dans une cellule n fois
on aura n images superposées dans la cellule ;)

Moi j'avais simplifié en supprimant le If/End if

mais ca ne changer rien au fait que les images se superposent.

Qu'en penses-tu, résolu ou pas alors ?
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re

A priori oui


Mais l'avantage d'avoir une feuille images
c'est qu'elle ne sert qu'a cela : stocker des images

(en plus tu peux la masquer sans que cela affecte la macro
qui affiche les images dans ta feuille base)

C'est une question de choix, ... de philosophie de création de ton classeur.
 

utilisateur_médiocre

XLDnaute Occasionnel
Re : affichage de petits dessins jpg

oui, c'est très vrai.
merci, je n'ai plus qu'à!!!!!!

si j'ai un accident de parcours, puis-je venir vous revoir ???
bon je ne souhaite pas.

par contre, encore une question. étant donné que je vais mettre ces dessins dans un autre classeur, le bon, comment faire pour nommer les dessins, où ?
merci
 

Staple1600

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re



Dans ma dernière pièce jointe il y a cette macro
Code:
Sub Nommer_une_Image()
Dim NouveauNom As String
     On Error GoTo Erreur_Msg
     MsgBox Selection.Name
     NouveauNom = InputBox("Attribuer un nouveau nom à l'image")
     Selection.Name = NouveauNom
     Exit Sub
Erreur_Msg:
     MsgBox "Pas de formes sélectionnées" & Chr(13) _
     & "Veuillez sélectionner une image, svp", , "Erreur : "
End Sub


Tu selectionnes l'image que tu as inséré dans ta feuille Excel
et tu lances la macro
tu choisis un nouveau nom

ensuite il faudra adapter la macro dans le code de la feuille
(Clic-Droit sur la feuille travail -> [Visualiser le code])
Code:
'... c'est dans cette partie du code, qu'il faudra modifier 
 Select Case myCell.Value
        Case "L": pictName = "rainure_languette" 
'c'est ici qu'on adpate les noms des images 
        Case "M": pictName = "mortaise"
        Case "T": pictName = "tenon"
        Case "rien": pictName = "bois_droit"
    End Select
'...
 
Dernière édition:

utilisateur_médiocre

XLDnaute Occasionnel
Re : affichage de petits dessins jpg

je viens de copier la macro dans le vrai classeur, celui qui va sevir mais les images ne s'affichent pas.
je vous joins le fichier
 

Pièces jointes

  • feuille débit_plus.zip
    34.6 KB · Affichages: 55
  • feuille débit_plus.zip
    34.6 KB · Affichages: 54
  • feuille débit_plus.zip
    34.6 KB · Affichages: 54

JCGL

XLDnaute Barbatruc
Re : affichage de petits dessins jpg

Re,

Tu as oublier de copier le code de la Feuille travail" :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim pictName As String
    Dim pictLoc As Range
    Dim myCell As Range
    Dim myPicture As Picture
    Dim myNewPicture As Picture

    Set myCell = ActiveCell
    Set pictLoc = Target.Offset(0, 2)

    If Target.Column = 4 And Target.Row > 5 Then MsgBox pictLoc.Address
  
    Application.ScreenUpdating = False

    pictName = ""
    Select Case myCell.Value
        Case "L": pictName = "rainure_languette"
        Case "M": pictName = "mortaise"
        Case "T": pictName = "tenon"
        Case "R": pictName = "bois_droit"
    End Select
    
     If pictName <> "" Then
        For Each myPicture In Me.Pictures
            If myPicture.TopLeftCell <> pictLoc(1) Then
                Exit For
            End If
        Next myPicture

        Worksheets("images").Pictures(pictName).Copy
        Me.Paste
        Set myNewPicture = Me.Pictures(Me.Pictures.Count)
        With pictLoc
            myNewPicture.Top = .Top
            myNewPicture.Height = .Height
            myNewPicture.Width = .Width
            myNewPicture.Left = .Left
        End With
        Target.Select
End If
End Sub
A+
 

Discussions similaires

Réponses
12
Affichages
440

Statistiques des forums

Discussions
312 165
Messages
2 085 882
Membres
103 013
dernier inscrit
cicro