OpenOffice.org / LibreOffice

xlsx ist stabiler als xls: Automatisch konvertieren

.xls ist das binary Format von Excel (1997-2003), das anfälliger für Beschädigungen und Kompatibilitätsprobleme ist.

.xlsx ist das moderne XML-basierte Format (ab Excel 2007), das robuster und besser mit externen Tools (wie PHP-Bibliotheken) funktioniert.

utomatisierung

Falls du häufiger mit solchen Dateien arbeitest, könntest du die Konvertierung automatisieren:

# Mit LibreOffice-Kommandozeile (kopfgesteuert)
soffice --headless --convert-to xlsx:"Excel 2007-365" datei.xls --outdir /zielverzeichnis/

Das spart manuelles Öffnen und Speichern.

Suchen & Ersetzen

Doppelte Zeilenumbrüche

Normaler Suchen/Ersetzen-Dialog. Wichtig: RegEx einschalten

Dann ersetzen:

  • \n (Zeilenumbrüche)
  • % (Absatzumbrüche. Vermutlich relevanter)
  • ^$ (NOT. Keine Ahnung, braucht man auch)
  • $ Absatzende
  • ^ Absatzanfang

Wiki OOo-RegEx

Alle Wörter in Klammern entfernen

Normaler Suchen/Ersetzen-Dialog. Wichtig: RegEx einschalten

Suchen: \([^{}]*\)

Ersetzen durch nichts

Potsdam: Adresse in einer Zeile

Alle Adressen sind in einer Zelle, mit Zeilenumbruch getrennt.

Zwei Schritte: 1. erst Zeilumbruch in was anderes umwandeln (z.B. ||| ) und

2. Dann Text in Spalten umwandeln

Grund: 'Text in Spalten' nimmt keine RegEx/Zeilenumbrüche. Das muss man vorher durch Ersetzen machen.

1. Zeilenumbrüche ersetzen

Suchen und Ersetzen zuerst Strg+H (Suchen und Ersetzen)

Suchen nach: Strg+J eingeben (BEI MIR: \n)

Ersetzen mit: z.B. ||| (ein eindeutiges Trennzeichen)

Dann „Text in Spalten“ mit ||| als Trennzeichen verwenden

2. Text in Spalten umwandeln

Markieren Sie die Zellen, die Sie aufteilen möchten

Gehen Sie zu Daten → Text in Spalten

Im Dialogfeld:

Bei Trennoptionen wählen Sie Getrennt

Aktivieren Sie Andere und geben Sie |||

Klicken Sie auf OK

Verschärfend: Sinnlose Informationen zusätzlich in dieser Zelle

Am Anfang ist bei vielen Zellen noch der Ortsteil (OT) angegeben. Die ganze Zeile muss weg (erst machen, NACHDEM der Zeilenumbruch zu ||| umgewandelt wurde!

Lösung mit Regulären Ausdrücken: Strg+H öffnen (Suchen und Ersetzen)

Weitere Optionen anklicken

Reguläre Ausdrücke aktivieren

Regex Pattern: text

OT[\]+\\\

Ersetzen mit: (leer lassen)

Erklärung des Regex:

OT = Literal „OT“

[^\|]+ = Ein oder mehrere Zeichen die kein | sind

\|\|\| = Drei Pipe-Zeichen (|||)

Alternative Patterns falls nötig: Wenn „OT“ nicht immer am Zeilenanfang steht:

text OT[^\|]+\|\|\| Wenn unterschiedliche Trennzeichen:

text OT[^|]+\|\|\| Wenn Leerzeichen variieren:

text OT\s+[^\|]+\|\|\| Schritt-für-Schritt: Dialog öffnen: Strg+H

„Weitere Optionen“ expandieren

☑ Reguläre Ausdrücke aktivieren

In Suchen nach: ^OT[^\|]+\|\|\|

Ersetzen mit: (leer lassen)

Alle ersetzen klicken

Testen vorher: Kopieren Sie vorher eine betroffene Zeile in ein neues Dokument zum Testen, z.B.: OT Siethen|||Rest des Textes

Nach dem Ersetzen sollte nur noch Rest des Textes übrig bleiben.

Das sollte alle unerwünschten „OT XXX|||“-Teile zuverlässig entfernen!

Serienbriefe (Mail merge)

Datendank einbinden

Etiketten und Briefe verserienbriefen

Bilder in Serienbriefen einbinden

Problem: Im Serienbrief soll ein Bild eingebunden werden, das aus der Datenbank kommt. Das Bild wechselt also immer.

Lösung(z.T.): In MS-Word gibt es dazu einen Befehl. OpenOffice (bis 3) unterstützt diese Funktion nicht. Bleibt nur, in der eigebauten Skriptsprache ein Makro zu schreiben.

Hier hat jemand genau das Problem gelöst: http://www.oooforum.org/forum/viewtopic.phtml?t=73329

Der hier löst das Problem fast mit einer Form, die ein Bild enthält: http://sheepdogguides.com/fdb/fdb1imagbp.htm

Andere interessante Links dazu:

StarOffice

 
Nach oben
openoffice.txt · Zuletzt geändert: von gerald
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp