Anzeige
Archiv - Navigation
1900to1904
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

Inline Zeilenumbruch defekt

Inline Zeilenumbruch defekt
18.10.2022 23:24:13
Lührs
Hallo
habe von einem Kunden einen Excel Datei zurükbekommen, in welcher für einen Zeilenumbruch innerhalb einer Zelle (inline) statt des üblichen #LF ein #CR#LF drin steht. https://www.herber.de/bbs/user/155743.xlsx
Der Kunde weiß leider nicht wie er das 'geschafft' hat, und mir ist auch kein Weg bekannt wie man das absichtlich machen kann.
Das wäre die erste Frage:
Weiß jemand wie sowas auf normalem Weg (ohne Makro) nur mit Excel geht?
In Excel selber merkt man davon erstmal nichts - die Zelle sieht genau wie eine Zelle mit einem 'normalen' #LF Zeilenumbruch aus.
Zum Problem wird das ganze dann bei mir, wenn ich daraus eine CSV erzeuge (z.B. "Unicode Text", usw...) und diese Datei dann maschinell auswerte.
Denn mein Parser zerlegt die Datei zuerst anhand der #CR#LF in Zeilen und analysiert erst danach die Zellen innerhalb dieser Zeile (also Anwendung der Regeln wie inline Verdopplung von Anführungszeichen und Zelltrenner etc. erst nach der Zerlegung in Zeilen - und die trennt dann falsch mitten in der Zelle.
Hier Screenshot der erzeugen CSV mit nicht-druckbaren Zeichen in notepad++:
Userbild
Zweite Frage:
Kennt jemand eine komfortable Möglichkeit die komplette Excel-Datei (mind das aktive Sheet) diesbezgl. zu reparieren, also die inline #CR#LF in #LF zu ändern?
Per Makro wäre das keine Problem (Replace(str, Chr(13), ""), aber das kann ich den Kunden leider nicht 'zumuten'.
Des weiteren kenne ich die Option in die Zelle reinzuklicken und den Zell-Edit-Mode zu starten - dann 'repariert' Excel diese Zelle, zumindest meistens :).
Aber auch das ist nicht zumutbar (einmal in jeden Zelle klicken).
Der im Netz meistgefundene Tip mit dem Suchen / Ersetzen von #Ctrl#J durch Nichts ("") klappt leider auch nicht, weil das scheinbar alle #LF plattmacht, aber nicht die falschen #CR.
Bin total ratlos und kann auch nichts im Netz finden. Jede Hilfe ist sehr willkommen.
Grüße, Joachim

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inline Zeilenumbruch defekt
19.10.2022 07:58:08
Oberschlumpf
Hi,
...Replace(str, Chr(13), ""), aber das kann ich den Kunden leider nicht 'zumuten'...
Hach ja, der arme, arme Kunde :-) (ok, is nur meine Meinung)
Alternative:
erstell doch DU in einer "leeren" Datei ein Makro, welches diese Schritte ausführt: (die Datei schickst du dann dem Kunden)
- für Anwender öffnet sich der Datei-Öffnen-Dialog
- Anwender wählt die (nicht vorher schon offene!) Problem-Datei aus, klickt auf Ok oder Öffnen oder wie der der Button heißt
- dein Makro wählt das Problem-Tabellenblatt mit den unerwünschten CR LF aus
- dein Makro prüft jede genutzte Zelle, ob CR LF enthalten
- wenn JA, dann entfernt dein Makro mit Replace(...) das CR aus den Zellen
Traut sich das dein Kunde auch nicht?
Dann soll Kunde dir die Problem-Datei per Mail/Kurier/sonstiges zukommen lassen, du entfernst dann CR per Makro, speicherst die Datei und sendest sie zum Kunden zurück.
Hilfts?
Ciao
Thorsten
Anzeige
AW: Inline Zeilenumbruch defekt
19.10.2022 09:45:04
Joachim
Hey, Danke für die schnelle Antwort
Ja, auf sowas in der Art könnte es hinauslaufen.
Hatte auch schon an ein *.vbs Skript gedacht, welches dann nacheinander alle Excel- oder CSV-Dateien in einem bestimmten Ordner öffnet, das Korrekturmakro da reinlädt und ausführt. Dann wäre es nur ein Doppelklick zur Reparatur.
Die Leute die mit den Excel Dateien arbeiten, sind aber meist Leute die wirklich nur redaktionelle Arbeit machen (sollen).
Der Admin hat denen meist alles mögliche gesperrt und Excel Sheets mit Makros dürfen die oft gar nicht öffnen.
Von daher wäre eine Lösung ohne Makro besser, aber wenn es die nicht gibt - ja, dann wird es auf sowas hinauslaufen.
Danke.
Anzeige
AW: Inline Zeilenumbruch defekt
19.10.2022 13:23:54
Daniel
Hi
beispielsweise per Formel in einer Hilfsspalte.

=Säubern(A1)
oder spezifischer

=Wechseln(A1;Zeichen(13)&Zeichen(10);Zeichen(10))
und nur zum Rausschmeißen:

=Wechseln(A1;Zeichen(13);"")
theoretisch müsse auch die Menüfunktion ERSETZEN funktionieren, du kannst diese Sonderzeichen für den Zeilenumbruch dadurch eingeben, dass du die ALT-Taste gedrückt hälst und den Zeichencode dreistellig auf dem NumBlock eintippst (mit führender 0).
allerdings war das bei meinen Tests mit Code 13 nicht erfolgreich. (mit Code 10 gehts)
Gruß Daniel
Anzeige
AW: Inline Zeilenumbruch defekt
19.10.2022 21:28:46
Joachim
Servus und Danke für die Antwort
-/- theoretisch müsse auch die Menüfunktion ERSETZEN funktionieren,
-/- du kannst diese Sonderzeichen für den Zeilenumbruch dadurch eingeben,
-/- dass du die ALT-Taste gedrückt hälst und den Zeichencode dreistellig auf dem NumBlock eintippst (mit führender 0).
-/- allerdings war das bei meinen Tests mit Code 13 nicht erfolgreich. (mit Code 10 gehts)
genau das hab ich auch erfolglos versucht, also in den Suchen/Ersetzen Dialog nur das Chr(13) reinzubekommen.
Per Alt+J ging es leider nicht und die Idee von dir mit dem Alt+013 klappt wohl leider leider auch nicht. (ja, alt+010 geht, aber nutzt nix)
Wenn es dafür eine Lösung gäbe(?), wäre das auf jeden Fall eine Option!
Alle anderen Vorschläge scheitern erstmal daran, dass die Excel Dateien (bisher) reine Textdateien sind - immer nur ID + Text(e) pro Zeile.
D.h. Zellfunktionen / Makros etc. sind, um den workflow einfach zu halten, erstmal nicht vorgesehen.
Das müsste zur Not geändert werden - dafür hätte ich dann aber bereits Lösungen parat.
D.h. mir geht es aktuell darum innerhalb Excel, ohne jegliche Programmiererei etc die Datei zu reparieren.
Ideal wäre z.B. auch das Umkopieren in eine anderes Format und wieder zurück, etc.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige