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

Ajuster 2 chiffres après la virgule

  • Initiateur de la discussion Initiateur de la discussion koikili
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

K

koikili

Guest
Bonjour à tous,

dans l'exemple ci-joint j'ai un code avec lequel je dispatche les montants que j'ai dans la feuille 1 dans la feuille 3 en passant par la feuille 2 pour faire l'actualisation, le problème c'est que je ne sais pas pourquoi il ne fait pas l'ajustement dans la colonne H pour prendre 2 chiffres après la virgule
quelqu'un peut me dire d'ou vient le problème ??

Merci par avance
 

Pièces jointes

Bonjour.
Pourquoi voudriez vous qu'il arrondisse la somme à 2 chiffres après la virgule ?
Sous prétexte qu'il y a un format de cellule qui n'en affiche que 2 ??
Essayez comme ça :
VB:
Private Sub Worksheet_Activate()
Dim Données As Collection, TS(), EOTP As SsGroup, LS As Long, Détail, Plg As Range

Rem. —— Première Partie
Set Données = GroupOrg(PlgUti(Feuil01.[A8]), 12)
ReDim TS(1 To Données.Count, 1 To 2)
For Each EOTP In Données
   LS = LS + 1
   TS(LS, 1) = EOTP.Id
   For Each Détail In EOTP.Contenu
      TS(LS, 2) = TS(LS, 2) + Détail(10)
      Next Détail
   TS(LS, 2) = Int(TS(LS, 2) * 100 + 0.5) / 100
   If TS(LS, 2) = 0 Then LS = LS - 1 ' Ligne finalement non créée si = 0
   Next EOTP
ValPlgAju(Me.[RécapMatos], LS) = TS
Me.Rows(8).Resize(5000).RowHeight = Me.Rows(7).RowHeight
Me.[RécapMatos].Cells(LS + 1, 2).Resize(, 1).FormulaR1C1 = "=SUM(R7C:R[-1]C)"
With LignesAjustées(Feuil03.Rows(8), LS)
   .Columns("L").Value = WorksheetFunction.Index(TS, 0, 1)
   .Columns("H").Value = WorksheetFunction.Index(TS, 0, 2)
   .Columns("A").FormulaR1C1 = "=10*ROW()-70"
   .Columns("A").Value = .Columns("A").Value
   End With
End Sub
 
Bonjour Dranreb,

merci pour votre réponse
je veux qu'il arrondise la somme à deux pour pouvoir copier par la suite le tableau dans un système qu'il n'accepte pas plus de 2 chiffres après la virgule
maintenant après avoir testé votre code je trouve que ca marche sauf que le total H39 de la 3ème feuille est supérieur à la somme de J8:J50 de la 1ère feuille alors qu'elle devraient être égaux

Cordialement
 
Non, il n'y a pas de raison qu'ils soient égaux.
Il doit y avoir un peu plus d'arrondis au centième supérieur, c'est tout.
D'ailleurs on trouve la même chose avec cette formule, validé par Ctrl+Maj+Entrée :
Code:
=SOMME(ARRONDI(J8:J50;2))
 
Dernière édition:
ah non les données d'origine il faut les garder tel qu'elles sont

EDIT: le code doit en premier lieu arrondir les sommes de la colonne H (Feuille 3) puis réajuster le montant de H8 (feuille3) pour que le montant total égale le total d'origine
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…