OVH Cloud OVH Cloud

Gérer une variable SVP ? :)

3 réponses
Avatar
Sebastien Ormancey
Bonjour a tous!


Je commence tout juste a utiliser les macros d'Excel, et je souhaiterai
savoir quelle procédure utiliser pour gérer une variable s'il vous plait..
Pour contourner mon probleme, j'ai ecris ma macro comme présenté ci-dessous,
mais je suis convaincu qu'il doit exister une facon plus simple de procéder!

Merci d'avance pour votre aide!

Sincèrement,

sebastien
----------------------------------------------------------------------------
------------------------------------------------
Cette macro a pour mission d'adapter les formules de certaines cellules vis
à vis d'une variable.. La cellule contenant la dite formule est dans
l'exemple ci-dessous E8. Je souhaiterai que E8 (1596 ci dessous), en
fonction de la valeur contenue en E6 (94 %), ait une formule type "=D8 x
S20" ou S20 fait partie d'une table de corrélation)..

CA object CA réalisé
AFFAIRE XXX 94%
CA 335 250 316 792
Prime 2 280 1 596

Solde


Table de corrélation
81% 5%
82% 10%
83% 15%
84% 20%
85% 25%
86% 30%
87% 35%
88% 40%
89% 45%
90% 50%
91% 55%
92% 60%
93% 65%
94% 70%
95% 75%
96% 80%
97% 85%
98% 90%
99% 95%
100% 100%

----------------------------------------------------------------------------
----------------------------------------------------
Application.ScreenUpdating = False
Sheets("PRIMES").Select
Range("V7:Y12").Select
Selection.ClearContents
Range("A1").Select

If Range("E6").Value < Range("R7").Value Then GoTo 1
If Range("E6").Value = Range("R7").Value Then GoTo 2
If Range("E6").Value = Range("R8").Value Then GoTo 3
If Range("E6").Value = Range("R9").Value Then GoTo 4
If Range("E6").Value = Range("R10").Value Then GoTo 5
If Range("E6").Value = Range("R11").Value Then GoTo 6
If Range("E6").Value = Range("R12").Value Then GoTo 7
If Range("E6").Value = Range("R13").Value Then GoTo 8
If Range("E6").Value = Range("R14").Value Then GoTo 9
If Range("E6").Value = Range("R15").Value Then GoTo 10
If Range("E6").Value = Range("R16").Value Then GoTo 11
If Range("E6").Value = Range("R17").Value Then GoTo 12
If Range("E6").Value = Range("R18").Value Then GoTo 13
If Range("E6").Value = Range("R19").Value Then GoTo 14
If Range("E6").Value = Range("R20").Value Then GoTo 15
If Range("E6").Value = Range("R21").Value Then GoTo 16
If Range("E6").Value = Range("R22").Value Then GoTo 17
If Range("E6").Value = Range("R23").Value Then GoTo 18
If Range("E6").Value = Range("R24").Value Then GoTo 19
If Range("E6").Value = Range("R25").Value Then GoTo 20
If Range("E6").Value = Range("R26").Value Then GoTo 21
If Range("E6").Value > Range("R26").Value Then GoTo 22

1: Range("E8").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 23

2: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 23

3: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 23

4: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 23

5: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 23

6: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 23

7: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 23

8: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 23

9: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 23

10: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 23

11: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 23

12: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 23

13: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 23

14: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 23

15: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 23

16: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 23

17: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[14]C[14]"
Range("A1").Select
GoTo 23

18: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[15]C[14]"
Range("A1").Select
GoTo 23

19: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[16]C[14]"
Range("A1").Select
GoTo 23

20: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[17]C[14]"
Range("A1").Select
GoTo 23

21: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("A1").Select
GoTo 23

22: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("V7").Select
ActiveCell.FormulaR1C1 = "=R[-6]C[5]*RC[-17]"
Range("A1").Select
GoTo 23

23:

If Range("E11").Value < Range("R7").Value Then GoTo 24
If Range("E11").Value = Range("R7").Value Then GoTo 25
If Range("E11").Value = Range("R8").Value Then GoTo 26
If Range("E11").Value = Range("R9").Value Then GoTo 27
If Range("E11").Value = Range("R10").Value Then GoTo 28
If Range("E11").Value = Range("R11").Value Then GoTo 29
If Range("E11").Value = Range("R12").Value Then GoTo 30
If Range("E11").Value = Range("R13").Value Then GoTo 31
If Range("E11").Value = Range("R14").Value Then GoTo 32
If Range("E11").Value = Range("R15").Value Then GoTo 33
If Range("E11").Value = Range("R16").Value Then GoTo 34
If Range("E11").Value = Range("R17").Value Then GoTo 35
If Range("E11").Value = Range("R18").Value Then GoTo 36
If Range("E11").Value = Range("R19").Value Then GoTo 37
If Range("E11").Value = Range("R20").Value Then GoTo 38
If Range("E11").Value = Range("R21").Value Then GoTo 39
If Range("E11").Value = Range("R22").Value Then GoTo 40
If Range("E11").Value = Range("R23").Value Then GoTo 41
If Range("E11").Value = Range("R24").Value Then GoTo 42
If Range("E11").Value = Range("R25").Value Then GoTo 43
If Range("E11").Value = Range("R26").Value Then GoTo 44
If Range("E11").Value > Range("R26").Value Then GoTo 45

24: Range("E13").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 46

25: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-6]C[14]"
Range("A1").Select
GoTo 46

26: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-5]C[14]"
Range("A1").Select
GoTo 46

27: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-4]C[14]"
Range("A1").Select
GoTo 46

28: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-3]C[14]"
Range("A1").Select
GoTo 46

29: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-2]C[14]"
Range("A1").Select
GoTo 46

30: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 46

31: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 46

32: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 46

33: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 46

34: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 46

35: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 46

36: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 46

37: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 46

38: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 46

39: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 46

40: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 46

41: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 46

42: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 46

43: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 46

44: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 46

45: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("V8").Select
ActiveCell.FormulaR1C1 = "=R[-7]C[5]*R[4]C[-17]"
Range("A1").Select
GoTo 46

(Ces deux parties ci dessus se répetent une multitude de fois.. Je suis
limité par la taille autorisée des macros :'( Ce fichier me permet de
calculer & MAJ automatiquement les primes des equipes commerciales.. Si 82%
du CA réalisé, 10% des primes acquises etc..)

Merci pour tout!

3 réponses

Avatar
Michel Gaboly
Bonsoir,

Juste un conseil :

Regarde l'aide de Select Case qui est parfaitement adapté à ton besoin, et évite les recours aux GoTo



Bonjour a tous!

Je commence tout juste a utiliser les macros d'Excel, et je souhaiterai
savoir quelle procédure utiliser pour gérer une variable s'il vous plait..
Pour contourner mon probleme, j'ai ecris ma macro comme présenté ci-dessous,
mais je suis convaincu qu'il doit exister une facon plus simple de procéder!

Merci d'avance pour votre aide!

Sincèrement,

sebastien
----------------------------------------------------------------------------
------------------------------------------------
Cette macro a pour mission d'adapter les formules de certaines cellules vis
à vis d'une variable.. La cellule contenant la dite formule est dans
l'exemple ci-dessous E8. Je souhaiterai que E8 (1596 ci dessous), en
fonction de la valeur contenue en E6 (94 %), ait une formule type "Ø x
S20" ou S20 fait partie d'une table de corrélation)..

CA object CA réalisé
AFFAIRE XXX 94%
CA 335 250 316 792
Prime 2 280 1 596

Solde

Table de corrélation
81% 5%
82% 10%
83% 15%
84% 20%
85% 25%
86% 30%
87% 35%
88% 40%
89% 45%
90% 50%
91% 55%
92% 60%
93% 65%
94% 70%
95% 75%
96% 80%
97% 85%
98% 90%
99% 95%
100% 100%

----------------------------------------------------------------------------
----------------------------------------------------
Application.ScreenUpdating = False
Sheets("PRIMES").Select
Range("V7:Y12").Select
Selection.ClearContents
Range("A1").Select

If Range("E6").Value < Range("R7").Value Then GoTo 1
If Range("E6").Value = Range("R7").Value Then GoTo 2
If Range("E6").Value = Range("R8").Value Then GoTo 3
If Range("E6").Value = Range("R9").Value Then GoTo 4
If Range("E6").Value = Range("R10").Value Then GoTo 5
If Range("E6").Value = Range("R11").Value Then GoTo 6
If Range("E6").Value = Range("R12").Value Then GoTo 7
If Range("E6").Value = Range("R13").Value Then GoTo 8
If Range("E6").Value = Range("R14").Value Then GoTo 9
If Range("E6").Value = Range("R15").Value Then GoTo 10
If Range("E6").Value = Range("R16").Value Then GoTo 11
If Range("E6").Value = Range("R17").Value Then GoTo 12
If Range("E6").Value = Range("R18").Value Then GoTo 13
If Range("E6").Value = Range("R19").Value Then GoTo 14
If Range("E6").Value = Range("R20").Value Then GoTo 15
If Range("E6").Value = Range("R21").Value Then GoTo 16
If Range("E6").Value = Range("R22").Value Then GoTo 17
If Range("E6").Value = Range("R23").Value Then GoTo 18
If Range("E6").Value = Range("R24").Value Then GoTo 19
If Range("E6").Value = Range("R25").Value Then GoTo 20
If Range("E6").Value = Range("R26").Value Then GoTo 21
If Range("E6").Value > Range("R26").Value Then GoTo 22

1: Range("E8").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 23

2: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 23

3: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 23

4: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 23

5: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 23

6: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 23

7: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 23

8: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 23

9: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 23

10: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 23

11: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 23

12: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 23

13: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 23

14: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 23

15: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 23

16: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 23

17: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[14]C[14]"
Range("A1").Select
GoTo 23

18: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[15]C[14]"
Range("A1").Select
GoTo 23

19: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[16]C[14]"
Range("A1").Select
GoTo 23

20: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[17]C[14]"
Range("A1").Select
GoTo 23

21: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("A1").Select
GoTo 23

22: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("V7").Select
ActiveCell.FormulaR1C1 = "=R[-6]C[5]*RC[-17]"
Range("A1").Select
GoTo 23

23:

If Range("E11").Value < Range("R7").Value Then GoTo 24
If Range("E11").Value = Range("R7").Value Then GoTo 25
If Range("E11").Value = Range("R8").Value Then GoTo 26
If Range("E11").Value = Range("R9").Value Then GoTo 27
If Range("E11").Value = Range("R10").Value Then GoTo 28
If Range("E11").Value = Range("R11").Value Then GoTo 29
If Range("E11").Value = Range("R12").Value Then GoTo 30
If Range("E11").Value = Range("R13").Value Then GoTo 31
If Range("E11").Value = Range("R14").Value Then GoTo 32
If Range("E11").Value = Range("R15").Value Then GoTo 33
If Range("E11").Value = Range("R16").Value Then GoTo 34
If Range("E11").Value = Range("R17").Value Then GoTo 35
If Range("E11").Value = Range("R18").Value Then GoTo 36
If Range("E11").Value = Range("R19").Value Then GoTo 37
If Range("E11").Value = Range("R20").Value Then GoTo 38
If Range("E11").Value = Range("R21").Value Then GoTo 39
If Range("E11").Value = Range("R22").Value Then GoTo 40
If Range("E11").Value = Range("R23").Value Then GoTo 41
If Range("E11").Value = Range("R24").Value Then GoTo 42
If Range("E11").Value = Range("R25").Value Then GoTo 43
If Range("E11").Value = Range("R26").Value Then GoTo 44
If Range("E11").Value > Range("R26").Value Then GoTo 45

24: Range("E13").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 46

25: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-6]C[14]"
Range("A1").Select
GoTo 46

26: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-5]C[14]"
Range("A1").Select
GoTo 46

27: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-4]C[14]"
Range("A1").Select
GoTo 46

28: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-3]C[14]"
Range("A1").Select
GoTo 46

29: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-2]C[14]"
Range("A1").Select
GoTo 46

30: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 46

31: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 46

32: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 46

33: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 46

34: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 46

35: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 46

36: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 46

37: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 46

38: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 46

39: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 46

40: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 46

41: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 46

42: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 46

43: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 46

44: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 46

45: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("V8").Select
ActiveCell.FormulaR1C1 = "=R[-7]C[5]*R[4]C[-17]"
Range("A1").Select
GoTo 46

(Ces deux parties ci dessus se répetent une multitude de fois.. Je suis
limité par la taille autorisée des macros :'( Ce fichier me permet de
calculer & MAJ automatiquement les primes des equipes commerciales.. Si 82%
du CA réalisé, 10% des primes acquises etc..)

Merci pour tout!


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

Avatar
AV
Me semble (avec réserves...) que ta prime pourrait être calculée comme suit :

Ê_Réel*((CA_Réel/CA_Object)-0.8)*0.05

ou bien (selon la précision souhaitée ?)
Ê_Réel*((PLANCHER(CA_Réel/CA_Object;0.01))-0.8)*0.05

A mon avis, pas besoin de macro
AV
Avatar
Sebastien Ormancey
Je vais essayer merci!


"Michel Gaboly" a écrit dans le message de
news:
Bonsoir,

Juste un conseil :

Regarde l'aide de Select Case qui est parfaitement adapté à ton besoin, et
évite les recours aux GoTo




Bonjour a tous!

Je commence tout juste a utiliser les macros d'Excel, et je souhaiterai
savoir quelle procédure utiliser pour gérer une variable s'il vous
plait..


Pour contourner mon probleme, j'ai ecris ma macro comme présenté
ci-dessous,


mais je suis convaincu qu'il doit exister une facon plus simple de
procéder!



Merci d'avance pour votre aide!

Sincèrement,

sebastien


--------------------------------------------------------------------------
--

------------------------------------------------
Cette macro a pour mission d'adapter les formules de certaines cellules
vis


à vis d'une variable.. La cellule contenant la dite formule est dans
l'exemple ci-dessous E8. Je souhaiterai que E8 (1596 ci dessous), en
fonction de la valeur contenue en E6 (94 %), ait une formule type "Ø x
S20" ou S20 fait partie d'une table de corrélation)..

CA object CA réalisé
AFFAIRE XXX 94%
CA 335 250 316 792
Prime 2 280 1 596

Solde

Table de corrélation
81% 5%
82% 10%
83% 15%
84% 20%
85% 25%
86% 30%
87% 35%
88% 40%
89% 45%
90% 50%
91% 55%
92% 60%
93% 65%
94% 70%
95% 75%
96% 80%
97% 85%
98% 90%
99% 95%
100% 100%



--------------------------------------------------------------------------
--

----------------------------------------------------
Application.ScreenUpdating = False
Sheets("PRIMES").Select
Range("V7:Y12").Select
Selection.ClearContents
Range("A1").Select

If Range("E6").Value < Range("R7").Value Then GoTo 1
If Range("E6").Value = Range("R7").Value Then GoTo 2
If Range("E6").Value = Range("R8").Value Then GoTo 3
If Range("E6").Value = Range("R9").Value Then GoTo 4
If Range("E6").Value = Range("R10").Value Then GoTo 5
If Range("E6").Value = Range("R11").Value Then GoTo 6
If Range("E6").Value = Range("R12").Value Then GoTo 7
If Range("E6").Value = Range("R13").Value Then GoTo 8
If Range("E6").Value = Range("R14").Value Then GoTo 9
If Range("E6").Value = Range("R15").Value Then GoTo 10
If Range("E6").Value = Range("R16").Value Then GoTo 11
If Range("E6").Value = Range("R17").Value Then GoTo 12
If Range("E6").Value = Range("R18").Value Then GoTo 13
If Range("E6").Value = Range("R19").Value Then GoTo 14
If Range("E6").Value = Range("R20").Value Then GoTo 15
If Range("E6").Value = Range("R21").Value Then GoTo 16
If Range("E6").Value = Range("R22").Value Then GoTo 17
If Range("E6").Value = Range("R23").Value Then GoTo 18
If Range("E6").Value = Range("R24").Value Then GoTo 19
If Range("E6").Value = Range("R25").Value Then GoTo 20
If Range("E6").Value = Range("R26").Value Then GoTo 21
If Range("E6").Value > Range("R26").Value Then GoTo 22

1: Range("E8").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 23

2: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 23

3: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 23

4: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 23

5: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 23

6: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 23

7: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 23

8: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 23

9: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 23

10: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 23

11: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 23

12: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 23

13: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 23

14: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 23

15: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 23

16: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 23

17: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[14]C[14]"
Range("A1").Select
GoTo 23

18: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[15]C[14]"
Range("A1").Select
GoTo 23

19: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[16]C[14]"
Range("A1").Select
GoTo 23

20: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[17]C[14]"
Range("A1").Select
GoTo 23

21: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("A1").Select
GoTo 23

22: Range("E8").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[18]C[14]"
Range("V7").Select
ActiveCell.FormulaR1C1 = "=R[-6]C[5]*RC[-17]"
Range("A1").Select
GoTo 23

23:

If Range("E11").Value < Range("R7").Value Then GoTo 24
If Range("E11").Value = Range("R7").Value Then GoTo 25
If Range("E11").Value = Range("R8").Value Then GoTo 26
If Range("E11").Value = Range("R9").Value Then GoTo 27
If Range("E11").Value = Range("R10").Value Then GoTo 28
If Range("E11").Value = Range("R11").Value Then GoTo 29
If Range("E11").Value = Range("R12").Value Then GoTo 30
If Range("E11").Value = Range("R13").Value Then GoTo 31
If Range("E11").Value = Range("R14").Value Then GoTo 32
If Range("E11").Value = Range("R15").Value Then GoTo 33
If Range("E11").Value = Range("R16").Value Then GoTo 34
If Range("E11").Value = Range("R17").Value Then GoTo 35
If Range("E11").Value = Range("R18").Value Then GoTo 36
If Range("E11").Value = Range("R19").Value Then GoTo 37
If Range("E11").Value = Range("R20").Value Then GoTo 38
If Range("E11").Value = Range("R21").Value Then GoTo 39
If Range("E11").Value = Range("R22").Value Then GoTo 40
If Range("E11").Value = Range("R23").Value Then GoTo 41
If Range("E11").Value = Range("R24").Value Then GoTo 42
If Range("E11").Value = Range("R25").Value Then GoTo 43
If Range("E11").Value = Range("R26").Value Then GoTo 44
If Range("E11").Value > Range("R26").Value Then GoTo 45

24: Range("E13").Activate
ActiveCell.FormulaR1C1 = "0"
GoTo 46

25: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-6]C[14]"
Range("A1").Select
GoTo 46

26: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-5]C[14]"
Range("A1").Select
GoTo 46

27: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-4]C[14]"
Range("A1").Select
GoTo 46

28: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-3]C[14]"
Range("A1").Select
GoTo 46

29: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-2]C[14]"
Range("A1").Select
GoTo 46

30: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[-1]C[14]"
Range("A1").Select
GoTo 46

31: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[0]C[14]"
Range("A1").Select
GoTo 46

32: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[1]C[14]"
Range("A1").Select
GoTo 46

33: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[2]C[14]"
Range("A1").Select
GoTo 46

34: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[3]C[14]"
Range("A1").Select
GoTo 46

35: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[4]C[14]"
Range("A1").Select
GoTo 46

36: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[5]C[14]"
Range("A1").Select
GoTo 46

37: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[6]C[14]"
Range("A1").Select
GoTo 46

38: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[7]C[14]"
Range("A1").Select
GoTo 46

39: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[8]C[14]"
Range("A1").Select
GoTo 46

40: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[9]C[14]"
Range("A1").Select
GoTo 46

41: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[10]C[14]"
Range("A1").Select
GoTo 46

42: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[11]C[14]"
Range("A1").Select
GoTo 46

43: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[12]C[14]"
Range("A1").Select
GoTo 46

44: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("A1").Select
GoTo 46

45: Range("E13").Activate
ActiveCell.FormulaR1C1 = "=RC[-1]*R[13]C[14]"
Range("V8").Select
ActiveCell.FormulaR1C1 = "=R[-7]C[5]*R[4]C[-17]"
Range("A1").Select
GoTo 46

(Ces deux parties ci dessus se répetent une multitude de fois.. Je suis
limité par la taille autorisée des macros :'( Ce fichier me permet de
calculer & MAJ automatiquement les primes des equipes commerciales.. Si
82%


du CA réalisé, 10% des primes acquises etc..)

Merci pour tout!


--
Cordialement,

Michel Gaboly
http://www.gaboly.com