Hallo Zusammen,
Versuche gerade ein kleines Prog. zu basteln, welches mir die Daten in Excel formatiert.
Jedoch hab ich hier ein kleines Problem und wollte euch bitten,
mir hierbei evtl. kurz behilflich zu sein.
Ausgangssituation:
In Excel werden aus verschiedenen Programmen Daten exportiert in diesem Format
0.123.456.789.abc, 0.123.h45.k67.13e usw…
Also dreizehnstellige Zahlen und Buchstaben mit Punkten.
Ich möchte diese nun so formatieren dass sie nur noch 10-stellig sind ohne Punkt.
0123456789.
Jedoch nur die Zahlen, welche ich e zuvor im Excelblatt markiert habe.
Habe hierzu auch schon etwas probiert:
Sub Entfernen()
Dim Markierung
Dim zelle As Range
Dim tabs Weis ich nicht ganz wie ich deklarieren soll
Markierung=Selection.Address(0,0)
Range(Markierung).Select
Selection.NumberFormat = „0000000000“
Selection.Replace What:=".", Replacement:="", lookAt:=xlPart,_
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
On Error Resume Next
Application.ScreenUpdating = False
For Each zelle In Range(Markierung)
zelle= left(zelle,Len(zelle)-3)
Next
Application.ScreenUpdating = True
End Sub
Bei ca. 80% der Datensätze funktioniert das. Jedoch habe ich noch recht viele Fälle wo
Sachen wie 1,23456789E ausgegeben werden oder gar nichts passiert, je nachdem wie sie durch das jeweilige Programm formatiert sind.
Gibt es eine Möglichkeit, unabhängig der Ausgangsformatierung dies zu realisieren, also 10-stellige Zahl (wichtig auch mit vorhergehender 0 also 0123456789) ausgeben?
Vielen Dank im Voraus für eure Hilfe.