Excel Feld mit Zahlen formaiteren
Hallo,
ich möchte in Excel eine Zahl formatieren.
Es soll nach dem Muster sein:
1-12345-12345-123456789-1
Wie bekomme ich denn diese Art der Formatierung in der Zelle hin?
Danke.
Gruß
ich möchte in Excel eine Zahl formatieren.
Es soll nach dem Muster sein:
1-12345-12345-123456789-1
Wie bekomme ich denn diese Art der Formatierung in der Zelle hin?
Danke.
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 293677
Url: https://administrator.de/forum/excel-feld-mit-zahlen-formaiteren-293677.html
Ausgedruckt am: 02.04.2025 um 08:04 Uhr
6 Kommentare
Neuester Kommentar

Zelle(n) markieren
Gruß grexit
STRG+1
drücken > Benutzerdefiniert > Eingeben:0"-"00000"-"00000"-"000000000"-"0

Ab dem 4. Block setzt er ab der 5. Stelle alles auf 0
Liest du hier:Last digits are changed to zeroes when you type long numbers in cells of Excel

Z.B. mit einem Formel-Makro:
EIngabe erfolgt dann z.B. als Text ohne Bindestriche in Zelle A1 und in B1 steht dann als Formel:
-edit- Nachtrag
Oder automatisch in der selben Zelle ginge das auch mit einem Event-Makro im jeweiligen Sheet auf dem die Daten liegen:
Im Beispiel werden die Zellen A1:A20 auf Änderung überwacht und nach Eingabe die Zahl formatiert (Zellen bitte als Text formatieren)
Public Function FormatText(str As String)
If Len(str) = 21 Then
FormatText = Mid(str, 1, 1) & "-" & Mid(str, 2, 5) & "-" & Mid(str, 7, 5) & "-" & Mid(str, 12, 9) & "-" & Right(str, 1)
Else
FormatText = Nothing
End If
End Function
=FormatText(A1)
-edit- Nachtrag
Oder automatisch in der selben Zelle ginge das auch mit einem Event-Makro im jeweiligen Sheet auf dem die Daten liegen:
Im Beispiel werden die Zellen A1:A20 auf Änderung überwacht und nach Eingabe die Zahl formatiert (Zellen bitte als Text formatieren)
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Application.Intersect(Range("A1:A20"), Target) Is Nothing Then
strValue = Target.Cells(1).Value
If Len(strValue) = 21 Then
Target.Cells(1).Value = Mid(strValue, 1, 1) & "-" & Mid(strValue, 2, 5) & "-" & Mid(strValue, 7, 5) & "-" & Mid(strValue, 12, 9) & "-" & Right(strValue, 1)
Else
'Target.Cells(1).Value = ""
End If
End If
End Sub