Macro vba : Prise en compte du resultat d'une formule

groundhog

XLDnaute Junior
Bonjour à tous,

En préambule : Je ne suis pas expert en VBA, je suis plutôt amateur. Merci pour votre indulgence... :D

Voilà, j'ai une problèmatique depuis une semaine sur un tableau de gestion de stocks, avec pour exemple la fonction suivante :

Si des les cellules des colonnes "I" et "O", le résultat de la formule < à celui des cellules de la colonne "B", alors affichage du résultat "RUPTURE" en colonne "A".

La fonction que je possède (merci à Fo_rum) fonctionne très bien, si dans les cellules des colonnes "I" et "O" le contenu est une valeur saisi manuellement. Par contre, en utilisant une formule dans les cellules des colonnes "I" et "O", le problème se complique : au changement de résultat, rien ne se passe.

Voici le code existant pour info :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Li As Integer
  If Target.Count > 1 Then Exit Sub
  Li = Target.Row
  If Target.Address = "$I$" & Li Or Target.Address = "$O$" & Li Or Target.Address = "$U$" & Li Then
    If Target < Range("C" & Li) Then
      Cells(Li, "B") = "RUPTURE"
    Else
      Cells(Li, "B") = "EN STOCK"
    End If
  End If
End Sub



J'espère avoir été clair pour vous tous, je cherche donc la clef de l'énigme pour terminer mon projet.

Merci à tous pour vos réponses !
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Macro vba : Prise en compte du resultat d'une formule

Bonjour groundhog,

si j'ai bien compris ton code, je pense que se serait plus simple de mettre des formules en colonne A ( d'après ta description) ou en colonne B ( d'après ton code)

pourrais-tu joindre un petit fichier avec qq explications ?
 

vbacrumble

XLDnaute Accro
Re : Macro vba : Prise en compte du resultat d'une formule

Re, bonsour phlaurent55

Je vois que tu as suivi mes conseils ;)

Mais ton fichier n'est pas passé.

Compresses le avant de le poster

(Clic-droit , envoyer vers, Dossiers compressés)
 

groundhog

XLDnaute Junior
Re : Macro vba : Prise en compte du resultat d'une formule

oups désolé. voilà merci à vous

Re, bonsour phlaurent55

Je vois que tu as suivi mes conseils ;)

Mais ton fichier n'est pas passé.

Compresses le avant de le poster

(Clic-droit , envoyer vers, Dossiers compressés)
 

Pièces jointes

  • GROUNDHOGV31.zip
    12.4 KB · Affichages: 91
  • GROUNDHOGV31.zip
    12.4 KB · Affichages: 94
  • GROUNDHOGV31.zip
    12.4 KB · Affichages: 93

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Macro vba : Prise en compte du resultat d'une formule

Salut groundhog, le forum

je vois que tu as un fichier en version 2007................je ne peux plus rien faire pour toi ( j'ai la 2003)

bonne fin de soirée
 

jeanpierre

Nous a quitté
Repose en paix
Re : Macro vba : Prise en compte du resultat d'une formule

Bonsoir le fil,

Le fichier est en .Xls tout ce qu'il y a plus de normal, donc il s'ouvre bien et normalement avec Excel 2000 ici.

Bonne soirée.

Jean-Pierre
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Macro vba : Prise en compte du resultat d'une formule

Re, à tous

avec cette formule en B6 à tirer vers le bas
Code:
=SI(OU((I6<C6);(O6<C6);;);"RUPTURE";"EN STOCK")

@ Jean-pierre: j'étais sur l'ordi de ma fille quand j'ai ouvert le fichier et elle travaille avec la version 2007....j'avais pas vu l'extension .xls
 

groundhog

XLDnaute Junior
Re : Macro vba : Prise en compte du resultat d'une formule

On revient à la même problèmatique : dans la colonne B, il faut avoir une valeur fixe, et non une formule (une autre macro tourne pour récupérer l'info et la copier dans une autre feuille).

Re, à tous

avec cette formule en B6 à tirer vers le bas
Code:
=SI(OU((I6<C6);(O6<C6);;);"RUPTURE";"EN STOCK")

@ Jean-pierre: j'étais sur l'ordi de ma fille quand j'ai ouvert le fichier et elle travaille avec la version 2007....j'avais pas vu l'extension .xls
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Macro vba : Prise en compte du resultat d'une formule

Re, groundhog

ne serais-tu pas en train de confondre tes données en "C" et tes indications en "B"
c'est pourtant bien ce qu'il y avait dans ton fichier

Je reviens voir sur le fil demain
à+
 

groundhog

XLDnaute Junior
Re : Macro vba : Prise en compte du resultat d'une formule

Non, dans la colonne "B", je veux du texte, et non une formule.

If then else

il faut trouver la problèmatique de la non prise en compte du recalcul de la formule en colonne "I"

Re, groundhog

ne serais-tu pas en train de confondre tes données en "C" et tes indications en "B"
c'est pourtant bien ce qu'il y avait dans ton fichier

Je reviens voir sur le fil demain
à+
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 145
Membres
103 130
dernier inscrit
FRCRUNGR