affichage du résultat d'un programme VBA dans une cellule

florieob

XLDnaute Nouveau
Bonjour à tous !

Je suis actuellement en train de travailler sur un projet informatique (rationnement de vaches laitières) et j'ai un petit souci avec une macro.
Cette macro doit consister à faire un calcul différent suivant si une cellule est identique à l'une ou à l'autre.

Mon problème est le suivant : il ne semble pas y avoir de souci dans le programme mais rien ne s'affiche dans la cellule qui est censée contenir le résultat. (la cellule appelée ConcentreProduction)
Le programme est ci-dessous. Merci d'avance :eek:

Sub QuantiteConcentreProd()

If [Production] = [ProdUFL] Then
[ConcentreProduction] = ([ObjectifProd] - [Prod]) * 0.44 / [UFLConcentre]

If [Production] = [ProdPDIE] Then
[ConcentreProduction] = ([ObjectifProd] - [Prod]) * 48 / [PDIEConcentre]

Else: [ConcentreProduction] = ([ObjectifProd] - [Prod]) * 48 / [PDINConcentre]
End If
End If

End Sub
 

job75

XLDnaute Barbatruc
Re : affichage du résultat d'un programme VBA dans une cellule

Bonjour florieob, salut Pierrot :)

Oui, avec des tests corrects ça doit donner :

Code:
Sub QuantiteConcentreProd()

If [Production] = [ProdUFL] Then
  [ConcentreProduction] = ([ObjectifProd] - [Prod]) * 0.44 / [UFLConcentre]
 
ElseIf [Production] = [ProdPDIE] Then
  [ConcentreProduction] = ([ObjectifProd] - [Prod]) * 48 / [PDIEConcentre]
 
Else
  [ConcentreProduction] = ([ObjectifProd] - [Prod]) * 48 / [PDINConcentre]

End If
 
End Sub
A+
 

Pierrot93

XLDnaute Barbatruc
Re : affichage du résultat d'un programme VBA dans une cellule

Re, bonjour Job:)

sous réserve d'avoir compris, on pourrait peut être également le coder ainsi :
Code:
[ConcentreProduction] = ([ObjectifProd] - [Prod]) * (IIf([Production] = [ProdUFL], 0.44, 48) / [PDINConcentre])

@+
 

Pierrot93

XLDnaute Barbatruc
Re : affichage du résultat d'un programme VBA dans une cellule

Re,

aarf, j'avais raté un truc... A tester....

Code:
[ConcentreProduction] = ([ObjectifProd] - [Prod]) * (IIf([Production] = [ProdUFL], 0.44, 48) / IIf([Production] = [ProdUFL], [UFLConcentre], [PDINConcentre]))
 

Discussions similaires

Statistiques des forums

Discussions
312 304
Messages
2 087 070
Membres
103 453
dernier inscrit
Choupi