Somme des arrondis différente du montant initial à répartir

KIM

XLDnaute Accro
Bonjour les ami(e)s et le forum,

J'ai un montant à répartir selon des clés de répartition. La somme des arrondis est différente du montant initial. J'ai trouvé la formule suivante dans le forum =SI(MOD(C7;1)>=0,5;ENT(C7)+1;ENT(C7)) qui n'a pas résolu cette différence.

Y-a-t-il une formule ou en vba pour régler ce problème.

Merci de votre aide
KIM
 

Pièces jointes

  • SommeDesArrondis_v1.xlsx
    11 KB · Affichages: 35

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Bonjour Philippe & le forum,
En effet avec ta formule s'applique sur les montants répartis avec les décimales. Je dois afficher des montants arrondis, sans les décimales, voir col E et F, avec la somme de ces montants arrondis égale au montant initial.
Merci d'avance de ton aide
KIM
 

mutzik

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

bonjour

voir dans le fichier, mais je pense que tu ne peux pas avoir de montant entier dont les sommes te feront retomber sur ta valeur initiale
petite 'bidouille' dans la colonne G
 

Pièces jointes

  • SommeDesArrondis_v1-1.xlsx
    10 KB · Affichages: 30

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Bonjour Mutzik, Bonjour Philippe et le forum,
Merci pour votre aide. Pour compléter ma demande initiale, j'ai dans un tableau le montant initial et les clés de répartition.
Quelle formule ou vba utilisé pour répartir ce montant selon les clés de répartition à des montants arrondis par clé de répartion et dont le total de ces montants arrondis soit égal au montant initial ?
Est-ce possible ?

Merci encore
KIM
 

Dranreb

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

Bonjour.

Il y a ça, en E9 :
Code:
=ARRONDI(($B$5-SOMME(E$8:DECALER(E9;-1;0)))*$C9/SOMME($C9:$C$14);0)
propagé vers le bas.
Mais ça pourrait aboutir à deux chiffres différents pour un même taux puisque ça revient à recalculer le taux de répartition du reste non encore réparti, de sorte que le dernier a toujours un taux de 100% du restant.
 

mutzik

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

re, salut les gens,

c'est à peu près ce que j'ai fait, mais en mettant la répartition (pour atteindre 100%) sur le plus grand montant, ce qui aura donc une incidence moins forte que sur un petit montant
 

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Re_Bjr le fil, le forum,
J'apprécie votre aide, merci à vous,
j'ai intégré la formule de Dranreb en attendant peut être une solution vba.
Bonne journée
KIM
 

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Re-Bjr le fil,
Ta formule m'a dépanné et débloquée la situation. Merci bien.
Le fichier est partagé, pour éviter de saisir des formules, Une macro s'intègre plus facilement dans un ensemble de macros existants pour la sortie d'un tableau de bord.

Bonne journée
KIM
 

Dranreb

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

VB:
Sub Répartition()
Dim Te(), Ts(), L&, Tot As Double
Te = Feuil1.[D8:D14].Value
ReDim Ts(1 To UBound(Te, 1), 1 To 1)
For L = UBound(Te) To 1 Step -1: Tot = Tot + Te(L, 1): Ts(L, 1) = Tot: Next L
Tot = Int(Tot + 0.5)
For L = 1 To UBound(Te): Ts(L, 1) = Int(Tot * Te(L, 1) / Ts(L, 1) + 0.5)
   Tot = Tot - Ts(L, 1): Next L
Feuil1.[E8].Resize(UBound(Ts)).Value = Ts
End Sub
 
Dernière édition:

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Re le fil,
@Dranreb,
Merci pour ta macro. Je viens de la tester. La somme des montants répartis est différente du montant initial.
Ci-joint le fichier avec la macro.
Y-t-il une solution ?
Merci encore. KIM
 

Pièces jointes

  • SommeDesArrondis_v1-2.xlsm
    17.7 KB · Affichages: 33

Dranreb

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

C'est parce qu'elle s'appuyait exclusivement sur les montants non arrondis. Donc K dans votre nouvel exemple.
En mettant Te = Feuil1.[K8:K14].Value ça marche.

Edit: mais on pourrait sûrement l'écrire de manière à ce qu'elle s’appuie sur le total à répartir et les taux ou les montant non arrondis ou des nombres de parts.
 
Dernière édition:

KIM

XLDnaute Accro
Re : Somme des arrondis différente du montant initial à répartir

Ok, merci Dranreb.
Encore une question, voir post#5, Est-il possible de s'affranchir d'une colonne intermédiaire ?
EN effet j'ai une colonne à remplir, un montant initial et les clés de répartition. Est-il possible d'intégrer le calcul du montant réparti dans la macro ?

KIM
 

Dranreb

XLDnaute Barbatruc
Re : Somme des arrondis différente du montant initial à répartir

Alors voila une version utilisant une fonction qui n'a besoin que du total à répartir et de poids de parts relatives (peu importe leur somme, pas obligatoirement = 1)
VB:
Option Explicit

Sub Répartition()
Feuil1.[E8].Resize(7).Value = RépArr(Feuil1.[B5].Value, Feuil1.[C8:C14])
End Sub
 
Function RépArr(ByVal MonTot As Double, Parts) As Variant()
Dim Te(), Ts(), L&, TotParts As Double
If TypeName(Parts) = "Range" Then Te = Parts.Value Else Te = Parts
ReDim Ts(1 To UBound(Te, 1), 1 To 1)
For L = UBound(Te) To 1 Step -1: TotParts = TotParts + Te(L, 1): Ts(L, 1) = TotParts: Next L
For L = 1 To UBound(Te): Ts(L, 1) = Int(MonTot * Te(L, 1) / Ts(L, 1) + 0.5)
   MonTot = MonTot - Ts(L, 1): Next L
RépArr = Ts
End Function
 

Discussions similaires

Statistiques des forums

Discussions
311 721
Messages
2 081 928
Membres
101 842
dernier inscrit
seb0390