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

XL pour MAC Arrondir automatiquement le chiffre d'une cellule

Jimbob

XLDnaute Nouveau
Bonjour à tous

Je fais appel a vous afin de savoir si il est possible et si oui comment, d'arrondir le chiffre d'une cellule et que la différence soit inscrite automatiquement dans une autre case.
Je ne sais pas si je suis très clair ^^.
Exemple : Dans la case B2 est noté 45,18
je souhaiterais que automatiquement dans ma case B2 apparaisse 46
et que la différence, soit 0,82 apparaisse dans la case F4


Je vous remercie par avance
 

Jimbob

XLDnaute Nouveau
Bonjour,

désolé je reponds tard, quelques contre temps.
Donc j'aime bien cette solution car en effet ne pas perdre la valeur de départ c'est pas mal.
Mais du coup je ne sais pas comment faire la somme des valeurs.

Dans ma case j'ai ; 287,12 * 288, dans l'autre 12,56 * 13
Comment faire la sommes automatiquement de 288+13
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour Jimbob,

Fichier (2) avec la formule matricielle en G4 :
Code:
=SOMME(SI(ESTNUM(TROUVE("*";$B2:$D20));--STXT($B2:$D20;TROUVE("*";$B2:$D20)+1;99)))
A+
 

Pièces jointes

  • PLAFOND(2).xlsm
    17.1 KB · Affichages: 10

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Et y a t il possibilité d'afficher seulement la valeur arrondi sans perdre la valeur de départ
en dehors de l'arrondi commercial en défaveur du client ...
Oui et sans macro
à l'aide du format de cellule sans décimale.
!!!! mais seulement si l'arrondi se fait à l'unité la plus proche
la colonne A ne sert qu'a montrer la valeur saisie
 

Jimbob

XLDnaute Nouveau
Avec un seul tableau de résultats ce n'est pas possible, avec 2 tableaux c'est possible.
Pas grave s'était pour le coté esthétique.

Et dernière question, j'essaie de bricoler ta formule matricielle mais je n'y arrive pas :


=SOMME.SI.ENS(D521;E5:E21;"x";SI(ESTNUM(TROUVE("*";$D5:$D21));--STXT($D5:$D21;TROUVE("*";$D5:$D21)+1;99)))-SOMME.SI.ENS(D2428;E24:E28;"x")
 

Jimbob

XLDnaute Nouveau
Bonjour,

désolé je sais que j'en demande beaucoup mais je ne trouve pas
qu'elle est le code pour cette fois ci faire l'arrondi inférieur ( 12,67 * 12) et de meme faire la sommes des arrondis
j'ai tenté des choses mais je ne trouve pas la solution

Merci par avance
 

job75

XLDnaute Barbatruc
Bonjour Jimbob,

C'est pourtant assez évident :
VB:
For Each Target In Target 'si entrées/effacements multiples
    If IsNumeric(CStr(Target)) Then Target = Target & " * " & Int(Target) Else Target = ""
Next
A+
 

Pièces jointes

  • PLANCHER(1).xlsm
    17.1 KB · Affichages: 8

Jimbob

XLDnaute Nouveau
Je n'arrive pas à appliquer ces deux commandes sur la même feuille
de B2:B20 plafond et de E2:E20 plancher

quand je rentre tout, cela fonctionne mais dès que je selectionne la case la valeur inscrite dedans disparait.
 
Dernière édition:

job75

XLDnaute Barbatruc
Nouveau fichier avec :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
Application.EnableEvents = False 'désactive les évènements
Set r = Intersect(Target, [B2:B20]) 'plage à adapter
If Not r Is Nothing Then
    For Each r In r 'si entrées/effacements multiples
        If IsNumeric(CStr(r)) Then r = r & " * " & Application.Ceiling(r, 1) Else r = ""
    Next
End If
Set r = Intersect(Target, [E2:E20]) 'plage à adapter
If Not r Is Nothing Then
    For Each r In r 'si entrées/effacements multiples
        If IsNumeric(CStr(r)) Then r = r & " * " & Int(r) Else r = ""
    Next
End If
Application.EnableEvents = True 'réactive les évènements
End Sub
 

Pièces jointes

  • PLAFOND PLANCHER(1).xlsm
    16.7 KB · Affichages: 3

Discussions similaires

Réponses
11
Affichages
254
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…