PB VBA

Fermé
Tonio - 31 mai 2010 à 15:23
 Tonio - 31 mai 2010 à 16:22
Bonjour,

J'ai un petit pb avec VBA

Voici mon code.

Sheets("Extraction SIGMA").Select

Dim i As Long
Dim res As Long
Dim ct As Long
On Error GoTo ErrorHandler
res = 0
ct = 0
i = 2
With Sheets("Extraction SIGMA")
While (.Range("J" & i).Value <> "")
If (.Range("L" & i).Value <> "" And .Range("J" & i).Value = "1750") Then
res = res + ((.Range("L" & i).Value) - (.Range("K" & i).Value))
ct = ct + 1
End If
i = i + 1
Wend
Sheets("KPI").Range("D17").Value = res / ct
End With

Ici, je calcule un délai moyen par rapport à plusieurs conditions, jusqu'ici pas de problèmes

Ensuite en dessous je souhaite faire le même calcul mais avec une condition supplémentaire: je calcule mon délais sur les lignes qui n'ont rien dans ma colonne T (souligné) et que ça aille en dessous du premier calcul c'est à dire en D18. (je souhaite ensuite réitérer l'opération pour T = C et T = E)
Le souci est que quand je lance ma macro après avoir terminé, elle me met les mêmes infos en D17 et en D18 ou est mon problème ?


With Sheets("Extraction SIGMA")
While (.Range("J" & i).Value <> "")
If (.Range("L" & i).Value <> "" And .Range("J" & i).Value = "1750" And .Range("T" & i).Value = "") Thenres = res + ((.Range("L" & i).Value) - (.Range("K" & i).Value))
ct = ct + 1
End If
i = i + 1
Wend
Sheets("KPI").Range("D18").Value = res / ct

Exit Sub
ErrorHandler:
MsgBox "aucune action dénouée aujourd'hui"

Sheets("KPI").Select
End With

End Sub



Merci d'avance !

1 réponse

Une idée ?
0