Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1520to1524
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

Trennzeichen-Fehler beim txt Import

Trennzeichen-Fehler beim txt Import
17.10.2016 20:46:02
Henner
Hallo liebes Forum,
mit folgendem Code importiere ich eine Textdatei in meine Tabelle (Variablendeklaration entfernt):

Sub Import()
strBlatt = ActiveSheet.Name
strContent = "Tabelle1"
varRange = "A2"
strFile = ThisWorkbook.Path & "\test.txt"
If Dir(strFile)  "" Then
Set wks = Sheets(strContent)
fFile = strFile
Workbooks.OpenText Filename:=fFile, Tab:=False, semicolon:=True, comma:=False, Space:=False, _
_
other:=False
ActiveSheet.UsedRange.Copy
wks.Range(varRange).PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveWorkbook.Close savechanges:=False
End If
End Sub

Befindet sich in der Textdatei zwischen den Inhalten ein Leerschlag, so wird beim Importieren dieser Leerschlag als Trennzeichen erkannt und das Semikolon ignoriert.
Befindet sich in der Textdatei zwischen den Inhalten kein Leerschlag, funktioniert der Code einwandfrei.
Inhalt der funktionierenden Textdatei:

Teil;10;4;Komfort7x24;Ja;Nein;Ja;Nein;Nein;Nein;Teil104Komfort7x24JaNeinJaNeinNeinNein
Voll;10;4;Komfort7x24;Ja;Nein;Ja;Nein;Nein;Nein;Voll104Komfort7x24JaNeinJaNeinNeinNein
Voll;15;4;Komfort7x24;Ja;Nein;Ja;Nein;Nein;Nein;Voll154Komfort7x24JaNeinJaNeinNeinNein

Inhalt der nicht funktionierenden Textdatei (Gleicher Inhalt mit " " nach Komfort):

Teilservice;10;4;Komfort 7x24;Ja;Nein;Ja;Nein;Nein;Nein;Teilservice104Komfort  _
7x24JaNeinJaNeinNeinNein
Vollservice;10;4;Komfort 7x24;Ja;Nein;Ja;Nein;Nein;Nein;Vollservice104Komfort  _
7x24JaNeinJaNeinNeinNein
Vollservice;15;4;Komfort 7x24;Ja;Nein;Ja;Nein;Nein;Nein;Vollservice154Komfort  _
7x24JaNeinJaNeinNeinNein

Downloads:
Excel File: https://www.herber.de/bbs/user/108835.xlsm
Funktionierende Textdatei: https://www.herber.de/bbs/user/108836.txt
Nicht funktionierende Textdatei: https://www.herber.de/bbs/user/108837.txt
Was mache ich falsch bzw was muss ich ändern?
semicolon:=True und Space:=False müsste doch passen - oder?
Besten Dank für Eure Hilfe! Henner

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

Betreff
Datum
Anwender
Anzeige
AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:03:24
Daniel
Hi
wenn du die Daten sowieso in der Makrodatei haben willst, dann kannst du sie auch mit DATEN - EXTERNE DATEN - AUS TEXT einlesen.
das funktioniert meiner Erfahrung nach zuverlässiger und du kannst das ganze von Hand ausführen und für die Umsetzung als Code mit dem Recorder aufzeichnen.
Gruß Daniel
(ERL) AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:33:04
Henner
Hi Daniel,
auch Dir vielen Dank für Deinen Vorschlag. Ich denke Du verstehst dass ich mich für die kleine Ergänzung von Luschi und Franz entschieden habe :-)
Schönen Abend und Gruss, Henner
AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:14:45
Luschi
Hallo Henner,
ein Blick in die Vba-Hilfe hat mir gezeigt, daß Du einen Parameter vergessen hast:
DataType:=xlDelimited
Nur dann wirken auch die Einstellungen für: Comma, Semicolon, Space etc.
siehe: https://msdn.microsoft.com/de-de/library/office/ff837097(v=office.15).aspx
Gruß von Luschi
aus klein-Paris
Anzeige
(ERL) AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:27:37
Henner
Hi Luschi,
works.
DANKE!! Auf so eine vergessene Kleinigkeit hatte ich gehofft - DANKE vielmals.
Schönen Abend und Gruss, Henner
AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:26:19
fcs
Hallo Henner,
Variablendeklaration entfernt
Warum? Erstens ist es hilfreich und manchmal der Grund für Fehler im Makro-Ablauf.
Du musst den Parameter "Datatype" mit vorgeben - hier xlDelimited
Bei dem gleichmäßigen Aufbau der Daten interpretiert Excel die Text-Datei so als ob die Daten in Spalten mit festen Breiten angeordnet sind und trennt an den Leerzeichen.
Gruß
Franz
Sub Import()
strBlatt = ActiveSheet.Name
strContent = "Tabelle1"
varRange = "A2"
strFile = ThisWorkbook.Path & "\Funktioniert_Nicht.txt"
'strFile = ThisWorkbook.Path & "\Funktioniert.txt"
If Dir(strFile)  "" Then
Set wks = Sheets(strContent)
fFile = strFile
Workbooks.OpenText Filename:=fFile, DataType:=xlDelimited, Tab:=False, _
semicolon:=True, comma:=False, _
Space:=False, other:=False
ActiveSheet.UsedRange.Copy
wks.Range(varRange).PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveWorkbook.Close savechanges:=False
End If
End Sub

Anzeige
(ERL) AW: Trennzeichen-Fehler beim txt Import
17.10.2016 21:31:58
Henner
Hallo Franz,
gleiche Lösung wie Luschi - nur ca. 3 Sekunden später :-) Dafür mit super Erklärung - DANKE!
Variablendeklaration ist recht umfangreich da der Code nur ein Schnipsel ist und ich zum Testen keine Lust hatte die benötigten VARs rauszusuchen. Ich hatte jedoch den gleichen Fehler mit und ohne VARs, daher als Fehlerquelle ausgeschlossen. Danke für den Hinweis.
Schönen Abend & Gruss, Henner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige