Calculer une Quantité grâce à une macro

Bonjour à tous ,

Le fichier ci-joint contient plus de 3000 de lignes

J'aimerai réaliser une macro me permettant de calculer deux quantités.

La Quantité I correspondra au nombres de pourcentages compris entre 80 et 84 % pour une personne

La Quantité II correspondra au nombres de pourcentages supérieur ou égale à 85 % pour une personne

Tout les pourcentages inférieur à 80% sont inutile.

J'aimerai donc pouvoir faire cela pour chaque personne.

Cordialement

Arnaud

Bonjour

En G2

=SOMMEPROD(($B$2:$B$3320=$B2)*($F$2:$F$3320>=0,8)*($F$2:$F$3320<=0,84))

en H2

=SOMMEPROD(($B$2:$B$3320=$B2)*($F$2:$F$3320>=0,85))

Cordialement

Bonjour,

Une solution VBA :

Sub galopin()
Dim i%, a(), b(), c(), D
  Set D = CreateObject("Scripting.Dictionary")
   a = Range("A2:F" & [a65000].End(xlUp).Row)   ' tableau a(n,1)
   For i = LBound(a) To UBound(a)
     D(a(i, 1)) = IIf(a(i, 6) >= 0.84, D(a(i, 1)) + 1, D(a(i, 1)))
   Next i
   [H2].Resize(D.Count, 1) = Application.Transpose(D.keys)

   b = D.items  ' transfert dans tableau b(0 To n-1)
   [I2].Resize(D.Count, 1) = Application.Transpose(D.items)
   D.RemoveAll
   For i = LBound(a) To UBound(a)
     D(a(i, 1)) = IIf(a(i, 6) >= 0.8, D(a(i, 1)) + 1, D(a(i, 1)))
   Next i

   c = D.items  ' transfert dans tableau c(0 To n-1)
   For i = LBound(b) To UBound(b)
   c(i) = c(i) - b(i)
   Next
   [J2].Resize(UBound(c) + 1, 1) = Application.Transpose(c)
End Sub

C'est peut-être pas ce qu'on fait de plus élégant... mébon !

[EDIT] 18h15 pour prendre en compte >=

A+

Bonjour à tous,

avec un TCD.

eric

Bonjour à tous ,

Merci pour vos différentes idées elles fonctionnent tous mais j'ai choisi celle de Eric qui me semblait la mieux adaptée

encore merci

cordialement

arnaud

Rechercher des sujets similaires à "calculer quantite macro"