Zahlenformate

Bild

Betrifft: Zahlenformate
von: Tobias
Geschrieben am: 11.04.2005 16:02:58
Hallo zusammen,
ein Kollege hat mich was zu Zahlenformaten gefragt. Inwischen haben alle Excelfreaks bei uns aufgegeben:
Ist es möglich ein Zahlenformat so zu wählen, daß zwar 3 Nachkommastellen angezeigt werden, diese aber wiederum nur dann, wenn auch tatsächlich Werte hinter dem Komma stehen. Also es soll angezeigt werden:
1,234 (bleibt 1,234)
1 (nicht 1,000)
Habs mit #,### probiert. Das klappt an sich auch, allerdings zeigt Excel dann nicht "1" an sondern immer "1,".
Ich denk ich war nah dran, aber es passt halt nicht.
Kann mir jemand helfen?

Bild

Betrifft: AW: Zahlenformate
von: Lars
Geschrieben am: 11.04.2005 16:23:27
Hi,
das sollte mit Format Standard gehen.
mfg Lars
Bild

Betrifft: AW: Zahlenformate
von: Tobias
Geschrieben am: 11.04.2005 16:41:46
@ Lars: Leider nicht, ich möcht ja trotzdem maximal 3 Stellen anzeigen, aber eben nur, wenn es auch welche anzuzeigen git außer nullen.
Weiß dafür jemand was?
Bild

Betrifft: AW: Zahlenformate
von: Lars
Geschrieben am: 11.04.2005 16:54:28
Hi,
was soll bei 0 angezeigt werden?
mfg Lars
Bild

Betrifft: AW: Zahlenformate - nur mit VBA
von: Boris
Geschrieben am: 11.04.2005 17:00:35
Hi Tobias,
das ist nur per VBA möglich:
Einfügen in das Klassenmodul der Tabelle:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub 'Bezieht sich nur auf Spalte A
With Target
    If .Value = Int(.Value) Then
        .NumberFormat = "General"
    Else
        .NumberFormat = "0.###"
    End If
End With
End Sub

Allerdings wird so aus 2,5567 dann optisch: 2,557
Grüße Boris
Bild

Betrifft: Damit dir der Code bei Text nicht abfliegt...
von: Boris
Geschrieben am: 11.04.2005 17:03:25
Hi,
hier noch mit entsprechender Prüfung:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub 'Bezieht sich nur auf Spalte A
With Target
    If IsNumeric(.Value) Then
        If .Value = Int(.Value) Then
            .NumberFormat = "General"
        Else
            .NumberFormat = "0.###"
        End If
    End If
End With
End Sub

Grüße Boris
Bild

Betrifft: AW: Zahlenformate
von: Tobias
Geschrieben am: 11.04.2005 17:21:17
@ Boris: Funktioniert! Vielen Dank!
Gruß Tobias
Bild

Betrifft: AW: Zahlenformat=Standard o.T.
von: Gert Seler
Geschrieben am: 12.04.2005 00:46:31
mfg
Gert
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zahlenformate"