Arrondis

excfl

XLDnaute Accro
Bonsoir le forum,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Intersect(Target, [A1:B10]) Is Nothing Then Exit Sub
 If Not (IsNumeric(Target.Value)) Then Exit Sub
 If Target.Value = "" Then Exit Sub
 Target.Value = Application.WorksheetFunction.RoundUp(Target.Value, -2)
 End Sub
Ce code arrondi bien à la centaine supérieure.

Mais génère ce code d'erreur :


Merci d'avance pour votre aide.

excfl
 

JCGL

XLDnaute Barbatruc
Re : Arrondis

Bonjour à tous,

Peux-tu essayer :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [A1:B10]) Is Nothing Then Exit Sub
    If Not (IsNumeric(Target.Value)) Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    Target.Value = Application.WorksheetFunction.RoundUp(Target.Value, -2)
    Application.EnableEvents = True
End Sub
A+ à tous

Edition : Sur les bons conseils de mon Luc...
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Arrondis

Bonsoir excfl :)
Salut mon JC :D

Je ne suis pas certain, mais, il ne serait pas conseillé de "descendre" le 'EnableEvents' juste avant de faire l'arrondi? Parce que si on 'Exit Sub' après avoir désactivé la gestion des événements, on se coince, non? Ou je dis une ânerie?
 

JCGL

XLDnaute Barbatruc
Re : Arrondis

Bonjour à tous,
Salut mon Luc,

Tu as entièrement raison.

A++ mon ami
A+ à tous
 

Discussions similaires


Haut Bas