Arrondir valeurs Excel

  • Initiateur de la discussion Christine
  • Date de début
C

Christine

Guest
Bonjour,

Je souhaiterais que l'ensemble de mes résultats
numériques (sur plusieurs feuilles) contiennent maximum 4 décimales
bref, arrondir pour ne pas avoir trop de chiffres après la virgule...
ceci quelque soit soit la colonne, quelque soit la valeur entrée par l'utilisateur ou calculée par formule..

Une idée via VBA?

Christine :)
 

porcinet82

XLDnaute Barbatruc
salut Christine,

juste une petite question, tu veux qu'excel t'affiche dans les cellules un nombre a 4 chiffres apres la vrigule, mais qu'il conserve quand meme la valeur réel, ou alors tu veux tronquer ton chiffre pour qu'il n'ai plus que 4 chiffre pares la virgule?

pour la premiere solution, soit tu fais par clique droit format de cellule et tu selectionnes nombre, puis nombre 4 décimal, ou alors via vba, tu sélectionnes une plage et tu appliques le code suivant

Code:
Selection.NumberFormat = '0.0000'

sinon, une petite macro de ce style ne garde que ce que tu souhaites

Code:
Sub Supp_Carac()
Dim x As Double
Dim z As Double

Range('A1').Select
For i = 1 To Range('A65536').End(xlUp).Row
    x = ActiveCell.Value
    y = InStr(1, x, ',', 1)
    y = y + 4
    z = Left(x, y)
    ActiveCell.Value = z
    Selection.Offset(1, 0).Select
    y = 0
Next i
End Sub

voila j'espere que ca te va, et au plaisir

@+
 
C

Christine

Guest
je voudrais qu'il n'affiche que 4 chiffres après la virgule
mais garder la valeur réelle car je dois encore effectuer des calculs
par la suite et celà perdrait en précision

Comment créer la procédure directement à l'ouverture du fichier Excel?

j'ai essayé celà

Dim wor as worksheet

For each wor In Worksheets
wor.Selection.NumberFormat = '0.0000'

...mais celà ne marche pas.:(

Comment modifier celà?

Merci en tout cas
 

ChTi160

XLDnaute Barbatruc
Salut Christine
bonjour le Fil
une possibilité dans ThisWorBook
Private Sub Workbook_Open()
Dim Ws As Worksheet
Application.ScreenUpdating = False
For Each Ws In ThisWorkbook.Sheets
Ws.Cells.NumberFormat = '###,##0.0000'
Next
Application.ScreenUpdating = True
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 223
Messages
2 086 397
Membres
103 200
dernier inscrit
pascalgip