Arrondi décimale avec condition et sélection de plage

Bonjour,

Je souhaite avoir un code VBA me permettant d'afficher une décimale si différent de 0 avec une macro en pouvant également sélectionner une plage de données.

Vous trouverez ci-joint un fichier Excel avec mon besoin.

4vba.xlsx (8.99 Ko)

C'est certainement quelque chose de simple, mais étant débutante en VBA je n'arrive pas à le faire.

Merci par avance pour votre aide.

Bonjour,

Un exemple à adapter.

Cdlt.

Public Sub Number_Format()
Dim rng As Range, Cell As Range
    Application.DisplayAlerts = False
    On Error Resume Next
    Set rng = Application.InputBox(prompt:="Sélectionnez la plage de cellules", Type:=8)
    If Err.Number = 424 Then Exit Sub
    For Each Cell In rng
        If IsNumeric(Cell) Then
            Select Case True
                Case Is = 0 Or Cell.Value - Int(Cell.Value) = 0: Cell.NumberFormat = "0"
                Case Else: Cell.NumberFormat = "0.0"
            End Select
        End If
    Next
End Sub

Bonjour Jean-Eric,

Merci, le code fonctionne très bien.

Toutefois, si je ne souhaite pas sélectionner à chaque fois ma plage de données mais en définir une directement comment puis-je faire stp?

Marion

Re,

Un nouvel exemple à adapter :

Public Sub Number_Format2()
Dim rng As Range, Cell As Range
    Set rng = ActiveSheet.Range("B4:F5")
    For Each Cell In rng
        If IsNumeric(Cell) Then
            Select Case True
                Case Is = 0 Or Cell.Value - Int(Cell.Value) = 0: Cell.NumberFormat = "0"
                Case Else: Cell.NumberFormat = "0.0"
            End Select
        End If
    Next
End Sub

C'est parfait merci beaucoup!

Rechercher des sujets similaires à "arrondi decimale condition selection plage"