Aide sur macro figer formules

Mi_

XLDnaute Occasionnel
Bonjour le forum,

Pour figer les formules (leur résultat en fait), j'utilise le code

Worksheets.Select
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues
ActiveSheet.Select
Application.CutCopyMode = False


Le problème c'est que les chiffres issues des formules figées ont 13 décimales.

Oui, je peux réduire l'affichage à 2 décimales uniquement, mais la cellule va toujours en avoir 13, ce qui m'ennerve. :) D'ailleurs ça mange de l'espace ! :)

Donc, comment faire pour avoir que 2 décimales ?

Merci pour toute idée,
Mi_
 

jeromegmc

XLDnaute Occasionnel
Salut,

Alors je te propose une solution même si je ne la trouve pas très élégante:

La solution serait d'utiliser la fonction 'ARRONDI(tonnombre,nb de décimal dérrière la virgule)' et après de réaliser un collage spéciale de la valeur.

Exemple sous Excel:
=ARRONDI(1.78885438199983,2)
L'affichage excel donnera: 1.79
Et en faisant un collage spécial il ne reste plus que 1.79

Et en VBA ce serait:

Code:
Dim MaVal, MyCells As Range, MaPlage

Set MaPlage = Range('A1:Z100')
For Each MyCells In MaPlage
MaVal = MyCells.Value
MyCells.Value = Round(MaVal, 2)
Next
Attention cependant, fait un test suivant tes cellules, car si ta cellule est vide au départ, après exécution de la macro, la valeur '0' y sera affectée.

A+

Message édité par: jeromegmc, à: 02/12/2005 09:06
 

Mi_

XLDnaute Occasionnel
Bonsoir jeromegmc, le forum,

Avec la solution ARRONDI, il faudrait que je bricole à la main des miliers de cellules avec formules déjà en place. :woohoo:

Par macro, c'est pas possible ? Du gendre effacer le reste des décimales après les deux premières pour toutes les nombres de la feuille ...

En tout cas merci,
Mi_
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas