Autor |
Beitrag |
erfahrener Neuling
      
Beiträge: 233
Erhaltene Danke: 19
Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
|
Verfasst: Di 28.02.17 10:29
Hallo,
ich erstelle in C# eine CSV-Datei, die man dann in Excel öffnen soll. Dabei kann es vorkommen, dass innerhalb eines Zellenwertes ein Zeilenumbruch kommt. Leider funktioniert das normale Zeichen (\n) nicht. Es wird dann immer in der nächsten Zeile angezeigt.
Da dies aber in Excel selbst möglich ist, muss es ja ein Zeichen dafür geben! Habe dazu leider nichts funktionierendes gefunden.
Vielleicht hattet ihr ja schonmal das gleiche Problem. Wäre dankbar für jegliche Art von Tipps.
Gruß
Julian
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 28.02.17 10:38
Moin!
Meines Wissens ist ein Zeilenumbruch in einer Zelle im CSV-Format nicht möglich.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 28.02.17 10:38
- Nachträglich durch die Entwickler-Ecke gelöscht -
|
|
erfahrener Neuling 
      
Beiträge: 233
Erhaltene Danke: 19
Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
|
Verfasst: Di 28.02.17 11:12
Danke für die schnellen Antworten.
Zitat: | Meines Wissens ist ein Zeilenumbruch in einer Zelle im CSV-Format nicht möglich. |
Das befürchte ich mittlerweile auch. Schade!
Zitat: | hast du dein WorkSheet auch enstrpechend für Zeilenumbrüche gesetzt? |
Direkt eine Excelmappe zu erstellen habe ich noch gar nicht bedacht, werde ich mir mal zu Gemüte führen
Zitat: | Und eventuell statt \n, Enviroment.NewLine benutzen. |
Mal gucken, ob ich dass eventuell replacen kann. Ich lese eigentlich eine Excelmappe aus und füge diese in eine DataTable. Bestimmte Rows wollte ich dann wieder in Excel sichtbar machen.
Trotzdem danke erstmal!
|
|
Th69
      

Beiträge: 4795
Erhaltene Danke: 1059
Win10
C#, C++ (VS 2017/19/22)
|
Verfasst: Di 28.02.17 11:23
Hallo,
zeige mal den Ausschnitt aus deiner CSV-Datei. Müsste einfach mit Setzen des gesamten Spaltenwerts in Anführungszeichen funktionieren:
Quelltext 1: 2:
| Text,"Text mit Zeilenumbruch",weiterer Text |
|
|
erfahrener Neuling 
      
Beiträge: 233
Erhaltene Danke: 19
Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
|
Verfasst: Di 28.02.17 11:44
Zitat: | Müsste einfach mit Setzen des gesamten Spaltenwerts in Anführungszeichen funktionieren: |
Leider nein.
Benutze ich folgendes Schema:
Quelltext 1: 2: 3:
| textABC;"text mit Leerzeile und noch einer Leerzeile";textXYZ |
dann zeigt es in Spalte 2 nur text an. Den Rest schneidet Excel ab.
|
|
Th69
      

Beiträge: 4795
Erhaltene Danke: 1059
Win10
C#, C++ (VS 2017/19/22)
|
Verfasst: Di 28.02.17 13:01
Das scheint eine Feature (Fehler) von Excel zu sein. Wenn du die Zeile per Hand vergrößerst oder aber für die Zelle "Oben ausrichten" aktivierst, erscheint der ganze Text mit Zeilenumbruch.
Für diesen Beitrag haben gedankt: erfahrener Neuling, Narses
|
|
erfahrener Neuling 
      
Beiträge: 233
Erhaltene Danke: 19
Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
|
Verfasst: Di 28.02.17 13:48
Also es hat tatsächlich funktioniert, dass ich es bei oben gezeigtem Format korrekt angezeigt kriege, wenn ich die Zelle auswähle und dann das Feld "Zeilenumbruch" ab- und auswähle
Allerdings löst das mein Problem nicht ganz, da man das für JEDE Zelle einzeln machen muss
Eine Idee hab ich aber noch...
Einloggen, um Attachments anzusehen!
|
|
erfahrener Neuling 
      
Beiträge: 233
Erhaltene Danke: 19
Win 7, Win 10
C#, ASP-MVC (VS 2017 Community), MS SQL, Firebird SQL
|
Verfasst: Di 28.02.17 14:00
Also die Lösung nochmal zusammengefasst:
Die CSV-Datei muss folgende Struktur haben:
Quelltext 1: 2: 3:
| text;"text mit Leerzeilen";weiterer Text | (es können auch alle Zellenelemente in Anführungszeichen stehen). Dann in Excel alle Zellen markieren und auf "Oben ausrichten" klicken. Somit werden alle Zeilenumbrüche korrekt dargestellt.
Nochmal danke an Th69 
|
|