Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

TXT Messwerte einlesen

TXT Messwerte einlesen
02.12.2020 10:01:12
Manfred
Hallo zusammen,
ich habe in den Weiten von Herber.de dieses Makro gefunden das mir die
Messwerte aus mehreren TXT-Dateien ausliest.
Messwerte-Format: ca. 900 Einträge untereinander
+0,0000e+00 +2,4505e-40
+2,4414e+00 +5,6540e-02
+4,8828e+00 +5,8798e-02
+7,3242e+00 +3,2807e-02
Alle 50 Txt-Dateien haben das gleiche Format
Nun liest er mir die Daten in Spalte A+B ein, aber alle untereinander.
Ich hätte diese Daten aber zwecks Diagramm gerne nebeneinander.
erste Txt-Datei in Spalte A+B
zweite Txt-Datei in Spalte C+D
dritte Txt-Datei in Spalte E+F
............usw.
Kann das bitte jemand anpassen ? Ich persönlich komme da nicht weiter.
Ist es möglich noch ein Öffnen-Dialogfenster mit vorgegebenem Pfad einzubauen ?
Sub ZweiSpalten_import_03()
'Liest die Daten untereinander ein
Sheets("Tabelle1").Select
Dim strPfad As String
Dim FSO As Object
Dim oFile
Dim lngLR As Long
Dim strDestination As String
'Anpassen
strPfad = "C\Temp\"
Set FSO = CreateObject("scripting.filesystemobject")
For Each oFile In FSO.getfolder(strPfad).Files
If LCase(oFile.Name) Like "*.txt" Then
strDestination = "A" & Cells(Rows.Count, 1).End(xlUp).row + 1
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & oFile, Destination:=Range( _
strDestination))
'.Name = Left(oFile.Name, Len(oFile.Name) - 4) '"TEXTFILES" 'Name des Tabellenblattes  _
nach Import
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End If
Next
End Sub
Mit freundlichen Grüßen
Manfred

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TXT Messwerte einlesen
02.12.2020 11:09:14
Rudi
Hallo,
teste mal:
Sub ZweiSpalten_import_03()
'Liest die Daten untereinander ein
Sheets("Tabelle1").Select
Dim strPfad As String
Dim FSO As Object
Dim oFile
Dim lngLR As Long
Dim rngDestination As Range
Dim lngColumn As Long
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Pfad auswählen"
.InitialFileName = "c:\temp\"
If .Show = -1 Then
strPfad = .SelectedItems(1)
End If
End With
If strPfad  "" Then
lngColumn = 1
Set FSO = CreateObject("scripting.filesystemobject")
For Each oFile In FSO.getfolder(strPfad).Files
If LCase(oFile.Name) Like "*.txt" Then
Set rngDestination = Cells(Rows.Count, lngColumn).End(xlUp).Offset(1)
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & oFile, Destination:=rngDestination)
'.Name = Left(oFile.Name, Len(oFile.Name) - 4) '"TEXTFILES" 'Name des Tabellenblattes  _
_
nach Import
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
lngColumn = lngColumn + 2
End If
Next
End If
End Sub

Gruß
Rudi
Anzeige
AW: TXT Messwerte einlesen
02.12.2020 11:53:40
Manfred
Hallo Rudi,
dein Makro läuft perfekt.
Recht herzlichen Dank.
Eine Frage hätte ich noch. Das habe ich bei der Überprüfung vermisst.
Wäre es möglich den Namen der eingelesenen TXT-Datei noch in Zeile 1 aller Einträge zu kopieren ?
Zeile 1 ist ja leer.
Gruß
Manfred
AW: TXT Messwerte einlesen
02.12.2020 22:02:17
Rudi
Hallo,
hinter Set rngDestiation=...
rngDestination.offset(-1)=oFile
Gruß
Rudi
AW: TXT Messwerte einlesen
03.12.2020 07:39:56
Manfred
Hallo Rudi,
sorry, ich nochmal.
Wenn ich das so mache wie du schreibst bekomme ich einen Fehler.
Laufzeitfehler 438, Objekt unterstützt diese Eigenschaft oder Methode nicht
alt: funktioniert
Set rngDestination = Cells(Rows.Count, lngColumn).End(xlUp).Offset(1)
neu: Fehlermeldung
Set rngDestination = Cells(Rows.Count, lngColumn).End(xlUp).Offset(1).rngDestination.Offset(-1) = oFile
Gruß
Manfred
Anzeige
AW: TXT Messwerte einlesen
03.12.2020 14:12:36
Manfred
Hallo Rudi,
ich habs hinbekommen, die Dateinamen werden eingetragen.
Alles bestens, nochmals vielen Dank.
Ich wünsch dir noch ne schöne Adventszeit.
Gruß
Manfred
=oFile.Name natürlich owT
02.12.2020 22:03:24
Rudi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige