Ich habe einen Code, der Dateien im Ordner von .txt (mit Trennzeichen "|) zu xslx, konvertieren Aber der Code funktioniert gut für einige Dateien (wenn ich es in Excel öffnen), die anderen sind falsch, wenn ich versuche, die wring manuell von excel ribbon (Hole externe daten -> aus text) zu importieren, sind die dateien korrekt.VBA Convert Trennzeichen Textdatei in Excel
Dies ist mein Code:
Sub tgr()
Const txtFldrPath As String = "C:\...\txtFiles"
Const xlsFldrPath As String = "C:\excelFiles"
Dim CurrentFile As String: CurrentFile = Dir(txtFldrPath & "\" & "*.txt")
Dim strLine() As String
Dim LineIndex As Long
Application.ScreenUpdating = False
Application.DisplayAlerts = False
While CurrentFile <> vbNullString
LineIndex = 0
Close #1
Open txtFldrPath & "\" & CurrentFile For Input As #1
While Not EOF(1)
LineIndex = LineIndex + 1
ReDim Preserve strLine(1 To LineIndex)
Line Input #1, strLine(LineIndex)
Wend
Close #1
With ActiveSheet.Range("A1").Resize(LineIndex, 1)
.Value = WorksheetFunction.Transpose(strLine)
.TextToColumns Other:=True, OtherChar:="|"
End With
ActiveSheet.UsedRange.EntireColumn.AutoFit
ActiveSheet.Copy
ActiveWorkbook.SaveAs xlsFldrPath & "\" & Replace(CurrentFile, ".txt", ".xlsx"), xlOpenXMLWorkbook
ActiveWorkbook.Close False
ActiveSheet.UsedRange.ClearContents
CurrentFile = Dir
Wend
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
dieses Bild das Ergebnis in Excel zeigen und die Originaldatei .txt
Und der Fehler -doesn't die Datei öffnen? Begrenzt es nicht? Limit-Größe ist nicht das Gleiche - Die Syntax scheint mir richtig zu sein. – Sgdva
@Sgdva, ich füge ein Bild hinzu. – BKChedlia
Sind die "falschen" Dateien aus einer anderen Quelle? –