Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
956to960
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
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilenumbruch in Textdatei

Zeilenumbruch in Textdatei
10.03.2008 20:05:37
SteffenS
Hallo Zusammen,
ich erzeuge eine Textdatei mit Excel. Nun kommt es vor, dass in der Textdatei anstatt eines Zeilumbruchs ein rechteck steht.
Wie kommt so etwas?
Hier mein Code
Open EDatei For Append As #D 'Append zum Anhängen der Dateien
'Allgemeine Daten einsetzen
For i = 12 To last_cell
If WSPDat.Cells(i, 5).Value <> "" And WSPDat.Cells(i, 8).Value = Marke Then
'Abfrage Leitzeile
If IsNumeric(WSPDat.Cells(i, 255).Value) = True And WSPDat.Cells(i, 255).Value > 0 Then
leitzeile = WSPDat.Cells(i, 255).Value
strTemp = leitzeile & Trennzeichen
Else
strTemp = i & Trennzeichen
End If
For j = 4 To 20
datwert = Replace(WSPDat.Cells(i, j).Value, Chr(10), " ")
strTemp = strTemp & datwert & Trennzeichen
Next j
Print #D, strTemp
strTemp = ""
End If
Next i
Close #D
Danke im Voraus
MFG
Steffen Schmerler

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenumbruch in Textdatei
10.03.2008 20:11:00
Volti
Hallo Steffen,
wann steht wo ein Rechteck? Bei welchem Programm?
Ein Rechteck steht dann da, wenn das aktuelle Programm das Zeichen nicht lesen bzw. deuten kann, also für alle unbekannten Zeichen.
Als Zeilenabschluss in Textdateien solltest Du lieber crlf statt nur lf nehmen, dann können auch andere Programme Deine Textdatei besser lesen.
lf =CHR(10)
cr =CHR(13)
crlf= CHR(13) & CHR(10)
viele Grüße
Karl-Heinz

an welcher Stelle....
10.03.2008 20:23:00
SteffenS
soll ich das einbauen?
Zur Zeit verwende ich ja gar keinen Umbruch....
Danke schonmal
Steffen

AW: an welcher Stelle....
10.03.2008 20:37:32
Renee
Hi Steffen,
Statt dem CHR(10) im Code, schreibst du vbCrLf
GreetZ Renée

Anzeige
hm, dass
10.03.2008 21:07:33
SteffenS
Chr(10) nehme ich doch nur zum ersetzen nicht am Zeilenende.
Liegt es an dem ersetzen.
Wie gesahgt das rechteck steht am Zeilenende.
Wo setzt excel also den umbruch?
Danke nochmal
MFG
Steffen

AW: hm, dass
11.03.2008 08:21:02
volti
Hallo Steffen,
Dein Problem kann ich anhand Deines Codes nicht entschlüsseln.
Erstens ist Dein code nicht vollständig, als dass ich es mal hier probieren könnte.
Z.B. ist "Trennzeichen" nicht gesetzt. Welches Zeichen ist Trennzeichen.
Möglicherweise ist es dieses Zeichen, da es auch am Ende steht, in Verbindung mit dem Zeilenabschluss.
Der Print-Befehl schreibt bei mir auf jeden Fall eine korrekte Zeile, so dass ich keine Rechtecke in meiner Datei vorfinde.
viele Grüße aus Hessen
Karl-Heinz

Anzeige
kompletter Code
12.03.2008 17:02:00
SteffenS
Hallo Karl-Heinz,
hier mal mein kompletter Code. Habe nur die unwichtigen Sachenherausgenommen

Sub export()
'Var setzen
Dim EDatei, Trennzeichen, EKons, PLS_G, PLS_U As String
Dim TBX As Worksheet
Trennzeichen = ";"
'Händlername
Dim H_Name As String
H_Name = ADM.Range("E8").Value
'Datei setzen
Set TBX = Workbooks("PL_Ueberg.xls").Sheets(HDNR)
Dim leitzeile As Long
leitzeile = 0
Dim D As Integer
D = FreeFile
Dim datwert As String
Open EDatei For Output As #D
'Allgemeine Daten einsetzen
Print #D, ADM.Range("U8").Value 'Format(ADMALLG.Range("J201").Value, "yyyy")
Print #D, HDNR & Trennzeichen & H_Name
Print #D, EKons
Print #D, HDNR * 27
Print #D, PLS_G & Trennzeichen & PLS_U
For i = 12 To 5500
If TBX.Cells(i, 2).Value  "" Then
'Abfrage Leitzeile
If IsNumeric(TBX.Cells(i, 255).Value) = True And TBX.Cells(i, 255).Value > 0 Then
leitzeile = TBX.Cells(i, 255).Value
strTemp = leitzeile & Trennzeichen
Else
strTemp = i & Trennzeichen
End If
For j = 2 To 5
datwert = Replace(TBX.Cells(i, j).Value, Chr(10), " ")
strTemp = strTemp & datwert & Trennzeichen
Next j
For j = 8 To 20
datwert = Replace(TBX.Cells(i, j).Value, Chr(10), " ")
strTemp = strTemp & TBX.Cells(i, j).Value & Trennzeichen
Next j
Print #D, strTemp
strTemp = ""
End If
Next i
Close #D
End Sub


MFG
Steffen

Anzeige
AW: kompletter Code
12.03.2008 19:59:56
Volti
Hallo Steffen,
leider sind immer noch einige Sachen nicht gesetzt. z.B. EDatei, HDNR und ADM usw.
Na ja, habe ich irgendiwe überbrückt.
Trotzdem erhalte ich keine unbekannten Zeichen in meiner Ausgabedatei. Alles ok.
Da ich hier zuhause nur Xls97 habe und der Replace-Befehl bei dieser Version nicht unterstützt wird, kann ich zu diesem Befehl keine Aussage treffen, da muss ich bis morgen im Dienst warten. Könnte also daran liegen, wie ich ja schon ausgeführt habe.
Melde mich ggf. noch mal.
Gruß
KH

AW: kompletter Code
13.03.2008 07:55:00
volti
Hallo Steffen,
nach Ausgabe von Daten anhand Deines Scrpits in eine Textdatei entstehen keine "rechteckigen" Zeichen.
Vielleicht sind schon derartige Zeichen in Deinen Daten vorhanden.
Falls das Problem weiter besteht, lass die Frage offen. Vielleicht weiß jemand anderes eines Erklärung für Dein Problem.
viele Grüße
KH

Anzeige
Danke
13.03.2008 18:14:34
SteffenS
Dir für Deine Bemühungen.
Werd die Frage mal offen lassen
MFG
Steffen

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige