afficher une image

  • Initiateur de la discussion matthieu1111
  • Date de début
M

matthieu1111

Guest
bonjour
sur une feuille jai inserer une image
et jaimerai que cette image soit 'cachée' ou 'afficher' selon la valeur d'une cellule
1=afficher
2=cachée

est-ce possible et si oui pouvez vous maider
merci davance a tous
a+ :side: :side:
 

ziopizza

XLDnaute Occasionnel
Bonjour matthieu1111

Ce petit code à adapter

Yves [file name=inserimage.zip size=7563]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/inserimage.zip[/file]
 

Pièces jointes

  • inserimage.zip
    7.4 KB · Affichages: 53

JJM

XLDnaute Occasionnel
Bonjour matthieu1111,

Voici un fichier d'exemple.
L'image doit être insérée à l'aide d'un bouton Image de la barre d'outils 'Contrôles', pour être individualisée en tant qu'objet et le mode création doit être inactif.
 

JJM

XLDnaute Occasionnel
Oups, l'image était trop grosse... [file name=Imagecachee.zip size=30389]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Imagecachee.zip[/file]
 

Pièces jointes

  • Imagecachee.zip
    29.7 KB · Affichages: 35
M

matthieu1111

Guest
salut JJM
ton fichier marche sans prob mais je n'arrive pas a le transformer pour kil fonctionne chez moi????

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range('B2')) Is Nothing Then
' MsgBox 'Sélection de ' & Target.Address

If Me.Range('B2') = 1 Then
Me.Image1.Visible = True
ElseIf Me.Range('B2') = 2 Then
Me.Image1.Visible = False
End If
End If
End Sub

est-ce cette partie qu'il faut que je modifie???

ps: je suis pas très douer en VBA
si il y a un endroit dans ton code ou je doit mettre le nom de mon image fait le moi savoir STP

merci!!!! :woohoo: :woohoo: :woohoo: :woohoo: :woohoo:
 
M

matthieu1111

Guest
rebonjour JJM
je suis arriver a faire le truc pour l'image avec la boite outil controle
mais je n'est qu'un carré gris ( CAD que jai pas dimage dans mon rectangle crée avec le bouton de la boite a outil controle )

et jai un autre problème
il fo ke je revienne sur la cellule B2 pour ke limage apparaisse ou soit cachée.....CAD que quand je mais 1 limage apparait pas tout de suite il fo ke je me remette sur la cellule B2 et pareil pour quand je met 2...
est-ce que jai une propriété dexcel a changer ou est-ce que ca vient du code???
merci encore
 

JJM

XLDnaute Occasionnel
Re bonjour matthieu1111,

Oui, c'est bien à cet endroit qu'il faut modifier le code.

Il faut commencer par insérer une image à l'aide de de la boîte à outils Contrôles (outil Image), en traçant un carré sur la feuille. L'image est grise, à ce moment, car il n'est pas encore fait référence à une image.

Passe en mode création, à l'aide de l'icône de cette barre d'outils.

Opère un clic droit sur l'image et sélectionne 'Propriétés' dans le menu contextuel qui s'ouvre. Clique sur la propriété 'Picture' (colonne à droite de ce nom), pour afficher à la fin de la ligne un petit bouton comportant trois points de suspension et clique dessus. Une boîte de dialogue te permettra de choisir sur le disque une image à insérer, avec les principaux formats reconnus JPEG, GIF, BMP (il ne faut pas que sa taille soit trop importante).
Profites-en pour paramétrer les autres propriétés, comme Autosize à True (le cadre sera adapté automatiquement à l'image), Backstyle à 0-fmBackStyleTransparent (le fond sera transparent), BorderStyle à 0-fmBorderStyleNone (pas de cadre autour).

Mais surtout, repère bien le nom de l'image, en haut de la fenêtre des propriétés, au niveau (name). Tu peux aussi le changer, par exemple en 'MonImage'.

Désactive le mode création.

Ensuite, il faut adapter le code VBA (F11 pour l'afficher rapidement) : la procédure événementielle 'Worksheet_SelectionChange' est automatiquement exécutée à chaque fois qu'une cellule sélectionnée sur la feuille correspondante est modifiée. Dans la première ligne de code 'If not Intersect...' on cherche à savoir si la sélection a concerné la cellule 'B2'. C'est ici qu'il faut modifier l'adresse de la cellule concernée, pour adapter le code (tu peux également indiquer une plage de cellules).
Ensuite, le code teste le contenu de la cellule 'B2' (à modifier également, éventuellement), 'Me' signifiant la feuille en cours (Feuil1 ici).
Il ne reste plus qu'à tester le contenu de la cellule B2 (tu peux mettre une variable contenant cette adresse, à la place, pour ne pas avoir à la modifier partout). Si ce contenu est égal à 1, on place la propriété de l'image à Visible = True (c.a.d. vrai) et s'il est égal à 2, à False (faux), ce qui rend l'image visible ou invisible.
Par contre, dans cet exemple, il faut remplacer le nom de l'image
'Image1' par 'MonImage'.

C'est tout pour adapter le code à ton cas.

N'hésite pas à demander des explications complémentaires, si des doutes subsistent.
 
M

matthieu1111

Guest
merci
jai pu modifier mon code
mettre mon image et paramètre les cadre , fond ...etc
tout cela marche
mais il persiste un petit prob

voila les valeur 1 ou 2 sont donner par une liste de choi ki me renvoi les valeur 1 ou 2 selon un choi A ou B

or kan je fai un choi limage ne bouge pas

donc jai essayer avec une cellule ou je change moi meme la valeur ( C.A.D que le 1 ou le 2 c'est moi qui les rentre )
metton qu'au depart limage soit apparante
je rentre donc 2
et rien ne se passe
il fo ke je quitte la cellule et que je revienne decu pour que cela fonctionne et il se trouve que moi il faut que cela fonctionne instantanement......alors comment est-ce que je peux faire?????faut-il que ma liste de choix A ou B renvoi non pas une valeur mais une variable X ou Y et dans ce cas la la recherche ne serait pas de 1 ou 2 mais de X ou Y.................et donc faut-il faire une macro pour cette liste de choix????
PS:merci c'est vraiment simpa de m'aider pcq je debute juste sur VBA et j'ai vraiment BP de mal
 

JJM

XLDnaute Occasionnel
Bonjour matthieu1111,

Je pense que le mieux serait que tu joignes un petit fichier d'exemple, car je n'ai pas ce problème de mon côté. Le code VBA se contente de scruter la valeur de la cellule, suite à un événement de modification.
Quelle est ta version d'Excel ?
 

Discussions similaires

Statistiques des forums

Discussions
312 091
Messages
2 085 212
Membres
102 821
dernier inscrit
jos78410