🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
umwandlung von csv nach xls mittels unoconv
-
- Beiträge: 131
- Registriert: Do 25. Apr 2013, 17:27
umwandlung von csv nach xls mittels unoconv
Hi!
Ich habe hier einen Auftrag, der öfter zu erledigen sein wird. Mit Unix-Shell-Skripts bearbeite und erstelle ich csv-Files. Mein Arbeitgeber will aber nur xls oder xlsx-Files... :-/
Da ich hier auf Linux nur Libreoffice installiert habe und auch nur damit arbeite, und Libreoffice unoconv mitbringt, dachte ich an ein Skript, welches mir die csv-Dateien in xls-Files konvertiert...
Nur unoconv erstellt zwar ein xls-File, aber alle Spalten aus dem csv landen gemeinsam in der ersten Spalte im xls...
Hab ich da irgendwo eine Option für den Spaltentrenner übersehen?
lg scientific
Ich habe hier einen Auftrag, der öfter zu erledigen sein wird. Mit Unix-Shell-Skripts bearbeite und erstelle ich csv-Files. Mein Arbeitgeber will aber nur xls oder xlsx-Files... :-/
Da ich hier auf Linux nur Libreoffice installiert habe und auch nur damit arbeite, und Libreoffice unoconv mitbringt, dachte ich an ein Skript, welches mir die csv-Dateien in xls-Files konvertiert...
Nur unoconv erstellt zwar ein xls-File, aber alle Spalten aus dem csv landen gemeinsam in der ersten Spalte im xls...
Hab ich da irgendwo eine Option für den Spaltentrenner übersehen?
lg scientific
Re: umwandlung von csv nach xls mittels unoconv
Hallo scientific,
wenn das eine ernsthafte Frage ist setzt Du voraus, dass die Forumsteilnehmer eine Glaskugel besitzen aus der die Struktur der .csv-Datei erkennbar ist.scientific hat geschrieben: Nur unoconv erstellt zwar ein xls-File, aber alle Spalten aus dem csv landen gemeinsam in der ersten Spalte im xls...
Hab ich da irgendwo eine Option für den Spaltentrenner übersehen?
-
- Beiträge: 131
- Registriert: Do 25. Apr 2013, 17:27
Re: umwandlung von csv nach xls mittels unoconv
Einige spalten, trennzeichen ist das pipezeichen und text ist in anführu gszeichen... Alternativ könnt ich als trennzeichen auch ein komma verwenden.
Also eine klassische csv-datei...

Also eine klassische csv-datei...

Re: umwandlung von csv nach xls mittels unoconv
Lese Dir das mal durch, dann bist Du schlauer. Beim Import der .csv-Datei müssen die Angaben für Feldtrennzeichen etc. mit dem Inhalt der .csv-Datei übereinstimmen.
-
- Beiträge: 131
- Registriert: Do 25. Apr 2013, 17:27
Re: umwandlung von csv nach xls mittels unoconv
Ok. Das beantwortet aber meine Frage nicht.
Was ich herausgefunden habe ist, dass man einen Importfilter angeben muss. Nur finde ich bei der in Hülle und Fülle existierenden Dokumentation zu unoconv leider nicht, welcherart der Importfilter gestaltet sein muss, damit eine csv-Datei, welche Zeilen beinhaltet die folgendermaßen gestaltet sind
Als Doku hab ich http://wiki.openoffice.org/wiki/Documen ... er_Options gefunden, aber auch hier konnte ich nicht herauslesen, wie der Importfilter mit -i richtig gesetzt wird.
Ich habe - mit anderen Worten ausgedrückt - nirgendwo eine Liste gefunden, woraus hervorgeht, dass 44 ein Komma ist, und wie die Codes der anderen möglichen Trennzeichen lauten.
lg scientific
Was ich herausgefunden habe ist, dass man einen Importfilter angeben muss. Nur finde ich bei der in Hülle und Fülle existierenden Dokumentation zu unoconv leider nicht, welcherart der Importfilter gestaltet sein muss, damit eine csv-Datei, welche Zeilen beinhaltet die folgendermaßen gestaltet sind
so importiert werden, damit daraus eine xls-Datei entsteht, welche die Spalten an den "|" aufteilt. Statt des Pipe-Zeichens kann ich auch "," verwenden, was ich aber nicht so gerne mache."ID001A1"|"ID2200ABB"|"irgend ein Text oder Beschreibung"|2011|"IKZ"|"Eine weitere Beschreibung."|"2012-01-01"|"2012-12-31"|"1) Status 1"|"In Verhandlung"|258.020,00|"0.0000"
Als Doku hab ich http://wiki.openoffice.org/wiki/Documen ... er_Options gefunden, aber auch hier konnte ich nicht herauslesen, wie der Importfilter mit -i richtig gesetzt wird.
Ich habe - mit anderen Worten ausgedrückt - nirgendwo eine Liste gefunden, woraus hervorgeht, dass 44 ein Komma ist, und wie die Codes der anderen möglichen Trennzeichen lauten.
lg scientific
-
- Beiträge: 131
- Registriert: Do 25. Apr 2013, 17:27
Re: umwandlung von csv nach xls mittels unoconv [SOLVED]
Hab jetzt herausgefunden - oder denke zumindest so - dass das die Dezimalwerte der ASCII-Codes sind. Demnach wäre eine Pipe ASCII 166.
Der Befehl
erzeugt wiederum ein xls-File, wo alle Spalten des CSV in der ersten Spalte gemeinsam incl. Delimiter und Anführungszeichen für Text stehen... :-/
[edit]
und warum es jetzt funktioniert hat, weiß wohl nur die Wetterwarte... :-/
[/edit]
lg scientific
Der Befehl
Code: Alles auswählen
unoconv -f xls -i 124,34,76 SCHIG-AB.csv
[edit]
und warum es jetzt funktioniert hat, weiß wohl nur die Wetterwarte... :-/
[/edit]
lg scientific
Re: umwandlung von csv nach xls mittels unoconv
Wenn bei .txt- oder .csv-Dateien die erste Zeile Feldnamen enthält, können diese direkt in CALC importiert werden.
Zur Vereinfachung, vorausgesetzt Feldtrenner etc. sind gleichbleibend, kann auch für das Verzeichnis in dem sich .csv-Dateien befinden eine Datenbankdatei angelegt und mittels der Datenbank-Ansicht in CALC mit einem 2 Mausklicks in eine CALC-Tabelle eingesteuert werden. Die Calc-Datei kann dann im Fremdformat .xls gespeichert werden.
Die Datenbank-Datei .odb muss dabei einmalig angelegt werden. Ab diesem Zeitpunkt sind alle .csv-Dateien, die sich in dem vorgenannten Verzeichnis befinden in der Datenbank-Ansicht (F4) sichtbar. Siehe hierzu auch http://www.ooowiki.de/csvDatentabelle.html.
Zur Vereinfachung, vorausgesetzt Feldtrenner etc. sind gleichbleibend, kann auch für das Verzeichnis in dem sich .csv-Dateien befinden eine Datenbankdatei angelegt und mittels der Datenbank-Ansicht in CALC mit einem 2 Mausklicks in eine CALC-Tabelle eingesteuert werden. Die Calc-Datei kann dann im Fremdformat .xls gespeichert werden.
Die Datenbank-Datei .odb muss dabei einmalig angelegt werden. Ab diesem Zeitpunkt sind alle .csv-Dateien, die sich in dem vorgenannten Verzeichnis befinden in der Datenbank-Ansicht (F4) sichtbar. Siehe hierzu auch http://www.ooowiki.de/csvDatentabelle.html.
-
- Beiträge: 131
- Registriert: Do 25. Apr 2013, 17:27
Re: umwandlung von csv nach xls mittels unoconv
Naja, den Aufwand mit der Datenbank brauch ich nicht.
Es sind derzeit 4-5 Files, welche die Anzahl der Spalten ändern können. Die Files haben auch eine Headerzeile mit den Spaltenbezeichnungen.
Es geht nur darum, das csv-File, welches ich mit einem Shell-Skript erstelle automatisiert in ein xls zu konvertieren, damit ich nicht jedes einzelne csv manuell öffnen und als xls wieder abspeichern muss. Ich brauch keine spezielle Datumskonvertierung o.ä. Öffnen mit Angabe des Spaltentrenners und abspeichern als xls.
Allerdings wär es auch noch fein, wenn ich irgendwie eine farbliche Formatierung des Hintergrundes pro Zelle abhängig vom Inhalt der Zelle mittels Skript (unoconv???) schaffen könnte. Ansonsten werd ich mir da wohl ein Makro basteln, welches auch gleich verschiedene Spalten sperrt und die Zellen inhaltsabhängig einfärbt.
lg scientific
Es sind derzeit 4-5 Files, welche die Anzahl der Spalten ändern können. Die Files haben auch eine Headerzeile mit den Spaltenbezeichnungen.
Es geht nur darum, das csv-File, welches ich mit einem Shell-Skript erstelle automatisiert in ein xls zu konvertieren, damit ich nicht jedes einzelne csv manuell öffnen und als xls wieder abspeichern muss. Ich brauch keine spezielle Datumskonvertierung o.ä. Öffnen mit Angabe des Spaltentrenners und abspeichern als xls.
Allerdings wär es auch noch fein, wenn ich irgendwie eine farbliche Formatierung des Hintergrundes pro Zelle abhängig vom Inhalt der Zelle mittels Skript (unoconv???) schaffen könnte. Ansonsten werd ich mir da wohl ein Makro basteln, welches auch gleich verschiedene Spalten sperrt und die Zellen inhaltsabhängig einfärbt.
lg scientific
-
- Beiträge: 32
- Registriert: Do 20. Jun 2013, 17:46
Re: umwandlung von csv nach xls mittels unoconv
Altes Thema, wieder interessant...
Ich krieg ein *.xlsx-File und möchte daraus ein csv mit "|" als Feldtrenner erzeugen.
gibt mir immer ein tatsächlich Komma-Separiertes File aus.
Verwenden wirklich so wenige unoconv? Weil ich such mir schon seit einem Jahr immer wieder die Finger wund zu diesem Thema... und finde nix...
lg jakob
Ich krieg ein *.xlsx-File und möchte daraus ein csv mit "|" als Feldtrenner erzeugen.
Code: Alles auswählen
unoconv -f csv -e FilterOptions=166,34,76 *.xlsx
gibt mir immer ein tatsächlich Komma-Separiertes File aus.
Verwenden wirklich so wenige unoconv? Weil ich such mir schon seit einem Jahr immer wieder die Finger wund zu diesem Thema... und finde nix...
lg jakob
LibreOffice
Version: 4.1.4.2 Build-ID: 410m0(Build:2) auf Debian Wheezy mit Backports
Version: 4.1.4.2 Build-ID: 410m0(Build:2) auf Debian Wheezy mit Backports
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.