Zeilenumbruch beim CSV Import erzwingen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Zeilenumbruch beim CSV Import erzwingen

Re: Zeilenumbruch beim CSV Import erzwingen

von komma4 » Do, 12.03.2015 10:55

Linux Kommandozeile:

Code: Alles auswählen

sed 's/\\r\\n/\n/g' eingabe.csv > ausgabe.csv

Für Windows gibt es dieses Unixtool auch (Tante Google hilft)

Re: Zeilenumbruch beim CSV Import erzwingen

von Stephan » Mi, 11.03.2015 16:46

z.B., die Zeile aFile = "d:\csv_spezial.csv" muss zunächst auf deine csv-Datei angepasst werden:

Code: Alles auswählen

Sub import_csv_spezial()
	aFile = "d:\csv_spezial.csv"
	Dim gesamtinhalt()
	iNumber = Freefile
	Open aFile For Input As iNumber
	While not eof(iNumber)
		Line Input #iNumber, sLine
		If sLine <>"" then
			akt = UBOUND(gesamtinhalt())
			Redim Preserve gesamtinhalt(akt+2)
			tmp = Split(sLine, "\r\n")
			gesamtinhalt(akt+1) = tmp(0)
			gesamtinhalt(akt+2) = tmp(1)
		end if
	wend
	Close #iNumber
	
	dokument = StarDEsktop.loadComponentFromURL("private:factory/scalc", "_blank", 0, Array())
	blatt = dokument.Sheets(0)
	For i = 0 To UBOUND(gesamtinhalt())
		teilinhalt = Split(gesamtinhalt(i), ";")
		For j = 0 To UBOUND(teilinhalt())
			blatt.getCellByPosition(j, i).FormulaLocal = teilinhalt(j)
		Next j
	Next i
End Sub

Gruß
Stephan

Zeilenumbruch beim CSV Import erzwingen

von merc24 » Mi, 11.03.2015 12:19

Ich würde mal bitte den Tipp von Experten benötigen. :)

Ich habe ein CSV Datei, die wie folgt aufgebaut ist:

;;;1;A\r\n;;;B
;;;2;C\r\n;;;D


\r\n kann ich auch anders formatieren. Ich will erreichen, dass beim Import \r\n als Zeilenumbruch verstanden wird, als würde die CSV so ausschauen:

;;;1;A
;;;;B
;;;2;C
;;;;D

Ich bekomme das nicht hin. Nur das tatsächliche Zeilenende erzeugt einen Umbruch. Es gibt auch nur die Auswahl einen Zellentrenners beim Import, nicht die eines Zeilentrenners. Hat da wer eine Idee, wie ich das erreiche? Bin für jeden Tipp dankbar!!!


Viele Grüße

Thomas

Nach oben