Bonjour,
Je doute que tes rabais suivent une progression constante.
Une petite fonction VBA est necessaire. Tu as besoin de faire passer un seul paramètre, le total des ventes pour le client.
1 2 3 4 5 6 7 8 9 10 11 12 13
| Function fRabais(vTotal As Currency)
Select Case vTotal
Case Is < 100000 ' pas de rabais
fRabais = vTotal
Case Is < 200000 '1%
fRabais = vTotal - ((vTotal * 1) / 100)
Case Is < 300000 '2%
fRabais = vTotal - ((vTotal * 2) / 100)
Case Else ' audelà de 300000 = 10%
fRabais = vTotal - ((vTotal * 10) / 100)
End Select
End Function |
Dans le même style tu peux simplement renvoyer un pourcentage au lieu du montant précalculé.
1 2 3 4 5 6 7 8 9 10 11 12 13
| Function fRabais(vTotal As Currency)
Select Case vTotal
Case Is < 100000 ' pas de rabais
fRabais = 0
Case Is < 200000 '1%
fRabais = 1
Case Is < 300000 '2%
fRabais = 2
Case Else ' audelà de 300000 = 10%
fRabais = 10
End Select
End Function |
Pour l'utiliser dans une requete :
TotalRabais : fRabais(montantTotal)
ou le champ montantTotal contient le total des ventes.
Si tu choisis de ne renvoyer que le pourcentage.
TotalRabais : montantTotal * ((montantTotal * fRabais(montantTotal))/100)
Cordialement,
Partager