Zahlenformat ändert sich nach Split
27.07.2022 14:02:39
Marius
ich versuche mir einen Code aufzubauen in dem mehrere Textdateien eingelesen werden. Nach dem Einlesen sollen die Werte in mehrere Spalten eingetragen werden. So weit so gut. Es funktioniert alles soweit, bis auf die Tatsache, dass die Werte beim Ausführen der Split-Funktion verändert werden. So wird aus einer 10,340000 plötzlich eine 10.340.000. Was muss ich tun um hier das korrekte Zahlenformat beizubehalten?
Vielen Dank im Voraus für eure Hilfe!
Die Datei zum Code müsste unter folgendem Link zu finden sein: https://www.herber.de/bbs/user/154395.txt
hier mein Code:
Sub einlesen()
Dim z As Integer
Dim j As Integer
Dim i As Integer
Dim L As Integer
Dim Matrize As String
Dim Einzelwert() As String
Dim Quelle As String
'Variable zum hochzählen der Spalten
s = 1
'Variable zum hochzählen der Zeilen
z = 1
'Schleife für die drei Textdateien
For d = 0 To 2
'Dateien als Array speichern
Quelle = "C:\Users\XXX\Test_" & d + 1 & "_strukturiert_t2-strukturiert_t2.txt"
'Dateien als Array "Quelle" gespeichert öffnen
Open Quelle For Input As #d + 1
'Schleife bis zum Ende der Datei
Do While Not EOF(d + 1)
'Zeile für Zeile in Array eintragen
Line Input #d + 1, Matrize
ActiveSheet.Cells(z, s) = Replace(Matrize, vbTab, ";")
'Variable z am Ende jedes durchgangs um 1 erhöhen
z = z + 1
Loop
s = s + 7
z = 1
Close #d + 1
Next
'Variable zum erhöhen der Spalte
n = 0
'Schleife für mehrere Spalten
For k = 1 To 16 Step 7
'Schleife zum Aufsplitten der Matrize in mehrere Spalten
For j = 1 To ActiveSheet.Cells(Rows.Count, k).End(xlUp).Row 'Laufvariable
Einzelwert = Split(Cells(j, k), ";") 'Array "Einzelwert" aufsplitten 'HIER ENTSTEHT DER FEHLER
For i = 0 To UBound(Einzelwert)
Cells(j, i + 1 + n) = Einzelwert(i)
Next
Next
'Variable zur Auswahl der Spalte um 7 erhöhen
n = n + 7
Next
End Sub