Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Insérer une image avec condition.

guy72

XLDnaute Impliqué
Bonjour,
Comment puis-je insérer une image (Nommée Rosée) à un endroit bien préci, si dans la cellule G31, le nombre devient plus grand que 21 ?
=Si(G31>21; "image Rosée";)
Exemple ci-dessous

 

patricktoulon

XLDnaute Barbatruc
re
exemple
imaginons que tu veuille faire apparaitre ton eclair en D2627 si G32 >21
dans la cellule d26 tu va mettre cette formule
=imginsert(G31;D2627)

dans un module standard

tu va mettre ces deux fonctions
l'une c'est pour aller chercher l'image sur ton disque dur et l'autre c'est pour la centrer en respectant son aspect ratio

bien sur il faudra que tu modifie le chemin de ton image
VB:
Public Function ImgInsert(cel As Range, place As Range)
   Dim X, ImG
   If cel > 21 Then
        Set ImG = ActiveSheet.Pictures.Insert("C:\Users\patricktoulon\Desktop\Rosee.png")
        ImG.Name = "eclair"
        X = Dimension_Position2(place, ActiveSheet.Shapes(ImG.Name), 100)
        ImG.Left = X(0)
        ImG.Top = X(1)
        ImG.Width = X(2): ImG.Height = X(3)
    Else
        On Error Resume Next
        ActiveSheet.Shapes("eclair").Delete
        Err.Clear
    End If
    ImgInsert = ""


End Function

Function Dimension_Position2(rng As Range, shap, Optional marge As Double = 0)
    DoEvents
    Dim Wr#, Hr#, W#, H#, L#, T#, Ratio#
    Ratio = Application.Min(rng.Width / shap.Width, rng.Height / shap.Height)
    W = shap.Width: H = shap.Height
    Wr = (W * Ratio) '* ((100 - marge) / 100)
    Hr = (H * Ratio) '* ((100 - marge) / 100)
    T = rng.Top + (rng.Height - Hr) / 2
    L = rng.Left + (rng.Width - Wr) / 2
    Dimension_Position2 = Array(L, T, Wr, Hr)
End Function
nous y voila
maintenant testons


on pourrait faire la même chose en mettant dans la feuille une copie originale de l'image et masquée et placer une copie par la formule aussi
bref comme tu vois c'est simple
 

guy72

XLDnaute Impliqué
Je ne peux pas mettre l'image dans une cellule, à l'endroit ou je veux mettre l'image, les cellules sont prises.
C'est pour ça que je souhaite mettre l'image dans une zonz de texte.
J'ai du mal expliqué ma demande
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…