Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

probleme d'arrondi en vba

HERBIN

XLDnaute Junior
Bonsoir
Lorsque je calcule mes coefficients trimestriels j’obtiens un total de 4.025, je souhaiterai réctifier les coefficients trimestriels pour obtenir 4 de la manière suivante :
T1 = 0,8696 /4,025 * 4 = 0.864
T1 = 1,5103/4,025 * 4 = 1,501
T1 = 1,257/4,025 * 4 = 1,249
T1 = 0,388/4,025 * 4 = 0,386


T1 0,8696 0,864
T2 1,5103 1,501
T3 1,257 1,249
T4 0,388 0,386
4,025 4,000

Mon code est le suivant mais ça ne marche pas
Code:
'calcul des Coefficients saisonniers trimestriels
Trim1 = (Range("g2").Value + Range("g6").Value + Range("g10").Value) / 3
Trim2 = (Range("g3").Value + Range("g7").Value + Range("g11").Value) / 3
Trim3 = (Range("g4").Value + Range("g8").Value + Range("g12").Value) / 3
Trim4 = (Range("g5").Value + Range("g9").Value + Range("g13").Value) / 3
' affichage des Coefficients saisonniers trimestriels
Cells(7, 11).Value = Trim1 / Range("k11") * 4
Cells(8, 11).Value = Trim2/ Range("k11") * 4
Cells(9, 11).Value = Trim3/ Range("k11") * 4
Cells(10, 11).Value = Trim4/ Range("k11") * 4
Merci pour votre aide
Cordialement
 

Pièces jointes

  • Saisonnalisé_V1.1.xls
    59.5 KB · Affichages: 61

laurent950

XLDnaute Accro
Re : probleme d'arrondi en vba

Bonsoir herbin,

En faite je ne connais pas trop votre programme mais pour que les arrondi fonctionne il fallait le faire en deux étapes :

Je m’explique 4.025 :

J’ai fait un premier calcul qui s’appel coef (variable) qui contient coef de ton exemple voici le code :
' Coef
coef = Round((Range("g2").Value + Range("g6").Value + Range("g10").Value) / 3 _
+ (Range("g3").Value + Range("g7").Value + Range("g11").Value) / 3 _
+ (Range("g4").Value + Range("g8").Value + Range("g12").Value) / 3 _
+ (Range("g5").Value + Range("g9").Value + Range("g13").Value) / 3, 3)

j’ai modifier votre code
Trim1 = Round(Round((Range("g2").Value + Range("g6").Value + Range("g10").Value) / 3, 4) / coef * 4, 3)

Trim2 = Round(Round((Range("g3").Value + Range("g7").Value + Range("g11").Value) / 3, 4) / coef * 4, 3)

Trim3 = Round(Round((Range("g4").Value + Range("g8").Value + Range("g12").Value) / 3, 4) / coef * 4, 3)

Trim4 = Round(Round((Range("g5").Value + Range("g9").Value + Range("g13").Value) / 3, 4) / coef * 4, 3)

Je ne sais pas si cela vous convient ou si vous n’avez pas compris ? Mais pour moi cela fonctionne il y a peux être plus simple mais je ne sais pas comment votre feuille est construite.

Pour information Round = arrondi (que l’on peux aussi avoir en formule Excel) et 3 pour le nombre derrière la virgule

Explication :

Si exemple la variable euro = 6.55957 et que l’on veux un arrondi de 3 derrière la virgule cela donne

Résultat = Round(euro,3) ‘ soit 6.560

Au plaisir de vous lire et vous répondre

Laurent
 

Pièces jointes

  • Herbin Saisonnalisé_V1.1.xls
    62 KB · Affichages: 55
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…