ich habe letztens von jemandem eine VBA-Syntax erhalten, mit der man die Anzahl der Zeichen in einer Excel-Zelle festlegt. Ich habe nämlich das Problem, dass ich eine txt.-Datei erstellen muss, wo ein bestimmtes Format einzuhalten ist - nämlich genau 8 zeichen (wobei (-), (.) und ( ) ebenfalls als Zeichen gelten). Allerdings ist der Datenumfang von 6x43825 Zahlen so ziemlich mächtig, sodass ich mich verweigere hier Handarbeit zu betreiben.
Die Syntax die mir letztens gegeben wurde, kann allerdings nur für Zahlen mit weniger als 8 Zeichen verwendet werden, d.h. er hängt je nach Zeichenanzahl noch ein paar Nullen dran (vorher müssen die Zahlen in der Excel allerdings als "Text" formatiert werden):
Sub n()
Dim i As Long
For i = 1 To 43825
Select Case Len(Cells(i, 1))
Case 7
Cells(i, 1) = Cells(i, 1) & "0"
Case 6
Cells(i, 1) = Cells(i, 1) & "00"
Case 5
Cells(i, 1) = Cells(i, 1) & "000"
Case 4
Cells(i, 1) = Cells(i, 1) & "0000"
Case 3
Cells(i, 1) = Cells(i, 1) & "00000"
Case 2
Cells(i, 1) = Cells(i, 1) & "000000"
Case 1
Cells(i, 1) = Cells(i, 1) & "0000000"
End Select
Next
For i = 1 To 43825
Select Case Len(Cells(i, 2))
End Sub
Wenn nun allerdings Zahlen wie, z.B:
-8.256666666
vorkommen, werden diese nicht "umgewandelt".
Kennt jemand eine VBA-Syntax, womit man Zeichen quasi löschen kann (wichtig! es müssen nur die letzten Zeichen gelöscht werden)?
Grüße,
Michaela