Création d'une fonction VBA pour calcul de primes
Bonjour,
Dans le cadre d'un projet j'aurai besoin de créer (en VBA) une macro me permettant de calculer automatiquement des primes en fonction de deux facteurs :
- le nombre de semaine travaillé
- le poste occupé.
J'ai créé ma boucle me permettant de traiter chaque ligne et de voir si l'algo analyse correctement (msgbox....). Or, pour calculer, c'est plus compliqué, j'ai tenté de le faire avec des formules, en vain, et je ne connais pas assez la mise en forme pour trouver les problèmes.
J'ai alors tenté avec cette technique, ça marche.. sauf que le résultat ne reste pas affiché. Il s'affiche puis s'efface dès que le prochain calcul s'effectue, et ainsi de suite. Chaque résultat vient remplacer le précédent sur l'ensemble de la colonne...
Y a t'il quelqu'un pour me conseiller ou m'aider à résoudre ce problème ?
Voici ma procédure :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Public Sub PrimePoste1()
Range("F9").Select
Do While ActiveCell <> ""
If ActiveCell.Offset(0, 1) >= 5 Then
If ActiveCell.Offset(0, -2) = "Grutier" Or ActiveCell.Offset(0, -2) = "Centralier" Then
MsgBox "prime +250e"
Range ("H9:H32").Value = Range ("G9") * Range ("G9") / Range ("G33") + 250
Else
MsgBox "prime"
Range ("H9:H32").Value = Range ("G9") * Range ("G9") / Range ("G33")
End If
Else
MsgBox "inférieur à 5"
Range("H9:H32").Value = 0
End If
ActiveCell.Offset(1, 0).Activate
Loop
End Sub |
Merci d'avance pour vos réponses !