Afficher image selon résultat d'une cellule
Résolu
david44
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
david44 Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
david44 Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voilà je ne sais pas si on pourra m'aider après plusieurs tests je m'en remet à vous..
J'aimerais effectuer l'affichage d'une image dans une feuille Excel selon le résultat d'une cellule (contenant une formule de calcul de %)
Aussi voilà le problème G une cellule "K6" qui calcule le % de 2 autres cellules (placées au dessus)
Selon le résultat obtenu, je désire afficher une image :
orage -> lorsque le résultat est < à 50 %
nuageux -> lorsque le résultat est < à 70 % et >=50 %
couvert -> lorsque le résultat est < à 90 % et >=70 %
soleil -> lorsque le résultat est >= à 90 %
Voilà mon code mais lorsque je tente de mettre de nouvelles conditions pour prendre en compte les autres tranches de test --> il m'affiche toujours le soleil. J'ai bien essayé avec EvenIf ou encore mettre plusieurs conditons If imbriquées mais rien à faire
Aussi voilà le code qui marche mais avec seulement une condition :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim objFeuille As Worksheet, objPict As Picture
If Worksheets("Feuil2").Range("K6").Value > 90 Then
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("C:\Documents and Settings\xxxx\Bureau\soleil.bmp")
With objPict
.Left = Range("G2").Left
.Top = Range("G2").Top
End With
Else
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("C:\Documents and Settings\xxxx\Bureau\orage.bmp")
With objPict
.Left = Range("G2").Left
.Top = Range("G2").Top
End With
End If
End Sub
Si quelqu'un peut m'aider je ne le remercierais jamais assez !!
voilà je ne sais pas si on pourra m'aider après plusieurs tests je m'en remet à vous..
J'aimerais effectuer l'affichage d'une image dans une feuille Excel selon le résultat d'une cellule (contenant une formule de calcul de %)
Aussi voilà le problème G une cellule "K6" qui calcule le % de 2 autres cellules (placées au dessus)
Selon le résultat obtenu, je désire afficher une image :
orage -> lorsque le résultat est < à 50 %
nuageux -> lorsque le résultat est < à 70 % et >=50 %
couvert -> lorsque le résultat est < à 90 % et >=70 %
soleil -> lorsque le résultat est >= à 90 %
Voilà mon code mais lorsque je tente de mettre de nouvelles conditions pour prendre en compte les autres tranches de test --> il m'affiche toujours le soleil. J'ai bien essayé avec EvenIf ou encore mettre plusieurs conditons If imbriquées mais rien à faire
Aussi voilà le code qui marche mais avec seulement une condition :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim objFeuille As Worksheet, objPict As Picture
If Worksheets("Feuil2").Range("K6").Value > 90 Then
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("C:\Documents and Settings\xxxx\Bureau\soleil.bmp")
With objPict
.Left = Range("G2").Left
.Top = Range("G2").Top
End With
Else
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("C:\Documents and Settings\xxxx\Bureau\orage.bmp")
With objPict
.Left = Range("G2").Left
.Top = Range("G2").Top
End With
End If
End Sub
Si quelqu'un peut m'aider je ne le remercierais jamais assez !!
A voir également:
- Afficher image selon résultat d'une cellule
- Resultat foot - Télécharger - Vie quotidienne
- Image iso - Guide
- Légender une image - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
4 réponses
Pour Info avec l'aide d'un gars super doué Nommé Maximin vlà un code que marche au poil :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
' déclaration des variables
Dim objFeuille As Worksheet, objPict As Picture
Dim fichier As String
Dim positionX As String
Dim positionY As String
' définition des objets
Set objFeuille = ActiveSheet
' définition de la position et de l'image en fonction de la valeur
If Worksheets("Feuil2").Range("K6").Value < 0.5 Then
fichier = "C:\Documents and Settings\xxxx\Bureau\orage.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.5 And Worksheets("Feuil2").Range("K6").Value < 0.7 Then
fichier = "C:\Documents and Settings\xxxx\Bureau\nuageux.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.7 And Worksheets("Feuil2").Range("K6").Value < 0.9 Then
fichier = "C:\Documents and Settings\xxxxx\Bureau\couvert.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.9 Then
fichier = "C:\Documents and Settings\xxxxx\Bureau\soleil.bmp"
positionX = "L10"
positionY = "L10"
End If
' positionnement de l'objet
Set objPict = objFeuille.Pictures.Insert(fichier)
With objPict
.Left = Range(positionX).Left
.Top = Range(positionY).Top
End With
End Sub
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
' déclaration des variables
Dim objFeuille As Worksheet, objPict As Picture
Dim fichier As String
Dim positionX As String
Dim positionY As String
' définition des objets
Set objFeuille = ActiveSheet
' définition de la position et de l'image en fonction de la valeur
If Worksheets("Feuil2").Range("K6").Value < 0.5 Then
fichier = "C:\Documents and Settings\xxxx\Bureau\orage.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.5 And Worksheets("Feuil2").Range("K6").Value < 0.7 Then
fichier = "C:\Documents and Settings\xxxx\Bureau\nuageux.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.7 And Worksheets("Feuil2").Range("K6").Value < 0.9 Then
fichier = "C:\Documents and Settings\xxxxx\Bureau\couvert.bmp"
positionX = "L10"
positionY = "L10"
ElseIf Worksheets("Feuil2").Range("K6").Value >= 0.9 Then
fichier = "C:\Documents and Settings\xxxxx\Bureau\soleil.bmp"
positionX = "L10"
positionY = "L10"
End If
' positionnement de l'objet
Set objPict = objFeuille.Pictures.Insert(fichier)
With objPict
.Left = Range(positionX).Left
.Top = Range(positionY).Top
End With
End Sub