Bug au démarrage pour afficher image selon résultat d'une cellule

libellule85

XLDnaute Accro
Bonjour le forum,

J'ai récupéré sur le forum la macro suivante pour afficher une image suivant le résultat d'une cellule que j'ai adapté à mon cas.
Celle-ci fonctionne très bien sauf si je démarre une nouvelle comparaison et que les montants précédents ont été effacés :
Quand j'entre un premier montant dans une de mes cellules (en B6) , la cellule F11 prend alors l'erreur #Valeur! (et de ce fait met le débogage en route) ce qui est normal car je n'ai pas encore entré le deuxième montant (en D6) pour la comparaison ! Comment faire pour éviter ce désagrément. Et quand j'arrête le débogueur et que je rentre le deuxième montant je n'ai plus aucun problème, l'image correspondante au résultat s'affiche normalement.

Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim objFeuille As Worksheet, objPict As Picture
If Worksheets("Feuil1").Range("F11").Value > 0 Then
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("F:\Docs Cpta\Image1.jpg")
With objPict
.Left = Range("F12").Left
.Top = Range("F12").Top
End With
Else
Set objFeuille = ActiveSheet
Set objPict = objFeuille.Pictures.Insert("F:\Docs Cpta\Image2.jpg")
With objPict
.Left = Range("F12").Left
.Top = Range("F12").Top
End With
End If
End Sub

D'avance merci pour votre aide
 

jmps

Nous a quitté
Repose en paix
Re : Bug au démarrage pour afficher image selon résultat d'une cellule

Bonsoir Libellule,

Pas très claire ta question.
Suffit pas de mettre un bout de code avec F11 et F12 alors que tes cellules doivent interagir avec B6 et D6 par formule si j'ai bien compris la question.
On est pas des Harry Potter :cool:

Mets un fichier exemple, ça sera plus parlant.
 

libellule85

XLDnaute Accro
Re : Bug au démarrage pour afficher image selon résultat d'une cellule

Bonsoir jmps,

Je te remercie pour ta réponse, mais j'ai posté le même fil en fin d'après midi sur un autre forum et grâce à Banzaï64 que je remercie une nouvelle fois, j'ai eu le bout de code suivant que je devais rajouter à la macro :

Code:
If Not IsError(Worksheets("Feuil1").Range("F11").Value) Then
  If Worksheets("Feuil1").Range("F11").Value > 0 Then
   ' La suite de ta macro
  End If
End If

Et maintenant celà fonctionne impeccablement.
Bonne soirée
 

Discussions similaires

Statistiques des forums

Discussions
312 814
Messages
2 092 314
Membres
105 356
dernier inscrit
papaglou