Besser arbeiten mit LibreOffice

LibreOffice-Tipps

09.07.2013
Die LibreOffice-Tipps verraten in dieser Folge unter anderem, wie Sie Makros mit Schaltflächen und Tastaturshortcuts erstellen, Zellen abhängig von ihren Werten einfärben, Symbole zu den Leisten hinzufügen und austauschen. Außerdem zeigen wir, wie Sie mit Matrixformeln ganze Zellbereiche berechnen.

Tipp: Writer: Zwischenablage ohne Formatierung einfügen

Wenn Sie Text aus Webseiten kopieren und in Writer über [Strg]+[V] beziehungsweise Bearbeiten / Einfügen einbinden, übernimmt LibreOffice sämtliche Formatierungen und Formatvorlagen. Ist das nicht gewünscht, und Sie möchten lediglich den reinen Text einfügen, so wählen Sie stattdessen Bearbeiten / Inhalte einfügen (Tastenkombination [Umschalt]+[Strg]+[V]) und im folgenden Dialogfenster die Option Unformatierter Text. Kopieren Sie häufig etwas im Browser, ist dieser Weg recht umständlich. Schneller geht's mit einem kleinem Makro. Der folgende Tipp zeigt, wie Sie ein solches Makro erstellen.

Tipp: Writer: Ein eigenes Makro erstellen

Öffnen Sie über das Menü Extras / Makros / Makros verwalten / LibreOffice Basic den Dialog zur Makroverwaltung. Gehen Sie in der linken Baumansicht zur Abteilung Meine Makros / Standard und klicken Sie auf Neu. Im folgenden Dialogfenster löschen Sie den bereits vorgegebenen Text und fügen dann das Makro aus Listing 1 ein (Abbildung 1). Drücken Sie nun [Strg]+[S] zum Speichern und schließen Sie das Eingabefenster.

Abbildung 1: LibreOffice bietet einen eigenen Editor zum Erstellen von Makros an. Syntaxhighlighting hebt die Schlüsselworte hervor.

Kopieren Sie nun Text im Browser und testen das neue Makro über Extras / Makros / Makro ausführen und wählen Sie im folgenden Dialog Ihr Makro aus Meine Makros / Standard aus. Hat alles geklappt, und ist der Inhalt der Zwischenablage ohne Formatierungen und Formatvorlagen im Dokument gelandet, lesen Sie in den nächsten beiden Tipps, wie Sie eine Schaltfläche und eine Tastenkombination für das neue Makro erstellen.

Listing 1

Makro Zwischenablage ohne Formatierung

Sub OhneFormat
Dim document as object
Dim dispatcher as object
Document = ThisComponent.CurrentController.Frame
Dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
Dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "SelectedFormat"
args1(0).Value = 1
Dispatcher.executeDispatch(document, ".uno:ClipboardFormatItems", "", 0, args1())
End sub

Tipp: Writer: Eine Schaltfläche für das Makro hinzufügen

Der Weg über das Menü ist lang, daher zeigen wir nun Schritt für Schritt, wie Sie in die Symbolleiste Standard eine Schaltfläche für das Makro einbauen.

  1. Öffnen Sie über das Menü Ansicht / Symbolleisten / Anpassen den Dialog zum Bearbeiten von Menüs, Tastenkombinationen und Symbolleisten. Gehen Sie zum dritten Reiter namens Symbolleisten.
  2. Wählen Sie im Drop-down-Menü Symbolleiste die Leiste aus, welche die neue Schaltfläche beherbergen soll. In unserem Beispiel haben wir uns für Standard entschieden.
  3. Klicken Sie rechts auf Hinzufügen, und der Dialog Befehle hinzufügen öffnet sich. Navigieren Sie links im Feld Bereich über LibreOffice Makros zu Ihrem Makro (Meine Makros / Standard / Module1) und markieren Sie rechts den Eintrag OhneFormat.
  4. Klicken Sie rechts oben auf Hinzufügen und dann Schließen. Der neue Eintrag OhneFormat befindet sich nun bereits in der Symbolleiste – allerdings ohne Icon, sondern als einfacher Textbaustein.
  5. Über die beiden Pfeile rechts neben dem Feld bewegen Sie die neue Schaltfläche an die gewünschte Stelle. Außerdem weisen Sie ihr über Ändern / Symbol austauschen ein Icon zu (Abbildung 2).
  6. Ein Klick auf OK schließt die Einrichtung ab. Das neue Icon ist sofort einsatzbereit.

    Abbildung 2: Über diesen Dialog weisen Sie Schaltflächen ein Symbol zu.

Writer: Eine Tastenkombination für das Makro

Noch flinker erreichen Sie Ihr eigenes Makro, wenn Sie ihm einen Tastaturshortcut zuweisen. Sie sollten dabei darauf achten, dass Sie kein Kürzel vergeben, was bereits eine andere Funktion aufruft. Dazu öffnen Sie wieder den Dialog Anpassen über das Menü Ansicht / Symbolleisten und wechseln zum Reiter Tastatur. Im oberen Bereich sehen Sie alle in LibreOffice verfügbaren Kürzel und erfahren auch, ob diese bereits eine Funktion erfüllen.

Gehen Sie unten im Fenster in der Abteilung Funktionen / Bereich über LibreOffice Makros / user / Standard / Module1 zu Ihrem Makro und markieren Sie rechts daneben im Feld Funktion dann den Eintrag OhneFormat. Suchen Sie dann oben eine Kombination aus, die noch nicht belegt ist, klicken Sie diese mit der linken Maustaste an und bestätigen die Wahl über Ändern. Rechts unten im Feld Tasten erscheint das neue Kürzel nun, und Sie können die Aktion über OK beenden.

Tipp: Calc: Makro durch "WENN()"-Formel starten

Hin und wieder wäre es nützlich, ein Makro über eine Tabellenformel in Calc aufrufen zu können. So sorgt die folgende Formel beispielsweise dafür, dass das Makro StarteKontrolle in Aktion tritt, wenn der Wert in Zelle A2 größer oder gleich 5 ist. Andernfalls schreibt Calc ein Ausrufezeichen in die Formelzelle:

=WENN(A2>=5;STARTEKONTROLLE();"!")

Bei dem Makro StarteKontrolle handelt es sich um eine benutzerdefinierte Basic-Funktion. Sie setzen hier eine Function-Prozedur anstelle einer Sub-Prozedur ein, da eine Tabellenformel immer ein Ergebnis liefern muss. Was als Resultat der benutzerdefinierten Funktion genau erscheint, bestimmen Sie selbst. Es könnte beispielsweise ein Text wie Auftrag erledigt, eine Zahl oder auch ein Wahrheitswert sein.

Eine Function-Prozedur kann genau wie eine Sub-Prozedur beliebige Aktionen ausführen. Wenn Sie bereits ein Makro in Form einer Sub-Prozedur erstellt haben, das Calc über eine WENN()-Formel ausführen soll, können Sie den Makro-Quellcode entweder direkt in die Function-Prozedur kopieren. Alternativ fügen Sie dort eine Zeile mit dem Namen der Sub-Prozedur ein, um diese aus der Funktion heraus aufzurufen.

Angenommen, Sie haben bereits ein Makro (eine Sub-Prozedur) mit dem Namen Kontrolle erstellt, das als Ergebnis ein Meldungsfenster mit der Nachricht Auftrag erledigt anzeigt, dann könnte dies wie folgt aussehen:

Sub Kontrolle()
    MsgBox "Auftrag erledigt"
End Sub

Damit Calc das Makro nun als Ergebnis einer WENN()-Formel aufruft, legen Sie eine zusätzliche Basic-Funktion an. Öffnen Sie die Makroverwaltung über Extras / Makros / Makros verwalten / LibreOffice Basic oder über [Alt]+[F11]. Ihr eigenes Makro namens Kontrolle sollte sich in der Abteilung Meine Makros befinden. Mit einem Klick auf Bearbeiten öffnen Sie den Editor (Abbildung 3).

Abbildung 3: Über Alt+F11 öffnen Sie die LibreOffice-Makroverwaltung.

Schreiben Sie nun unter den existierenden Code eine Funktion, die das Makro Kontrolle aufruft und als Ergebnis den Text Wert erreicht zurückgibt:

Public Function StarteKontrolle() As String
    Kontrolle
    StarteKontrolle = "Wert erreicht"
End Function

Die erste Zeile enthält den Funktionsnamen StarteKontrolle und den Datentyp, den die Funktion zurückgibt. In unserem Beispiel ist das eine Zeichenfolge (As String). Die zweite Zeile ruft das vorhandene Makro Kontrolle über seinen Namen auf. Danach bestimmen Sie das Funktionsergebnis, indem Sie dem Funktionsnamen StarteKontrolle den gewünschten Wert übergeben (hier die Zeichenfolge Wert erreicht. Abbildung 4 zeigt die Sub-Prozedur, gefolgt von der Function-Prozedur. Klicken Sie auf die Speichern-Schaltfläche, um das neue Makro StarteKontrolle in Ihre Sammlung aufzunehmen.

Abbildung 4: So sieht das fertige Makro "StarteKontrolle" aus.

In Ihren Tabellen können Sie StarteKontrolle nun wie jede andere Calc-Funktion einsetzen. Schreiben Sie die oben gezeigte WENN()-Formel in eine Zelle (nicht A2) und geben Sie in A2 dann einen Zahlenwert ein. Ist dieser größer oder gleich 5, erscheint das Meldungsfenster mit der Nachricht Auftrag erledigt, und in der Formelzelle steht nun Wert erreicht (Abbildung 5). Vergessen Sie nicht das leere Klammernpaar nach dem Funktionsnamen. Es ist zwingend erforderlich, denn sonst würde Calc STARTEKONTROLLE als Bereichsnamen und nicht als Funktion interpretieren.

Abbildung 5: Das Fenster meldet "Autrag erledigt", wenn der Wert in A2 größer oder gleich 5 ist.

Tipp: Calc: Zellen gezielt einfärben

Wenn Sie einzelne Tabellenzellen farblich hervorheben, erleichtert das die Kontrolle. So können Sie beispielsweise alle Zellen grün hinterlegen, die den Wert 0 enthalten. Leerzeilen und andere Einträge soll Calc ignorieren. Dazu öffnen Sie über Druck auf [F11] zunächst den Dialog für die Formatvorlagen. Ein Rechtsklick ins Fenster und Neu öffnet ein Dialogfenster, in dem Sie die Vorlage erstellen. Nennen Sie diese beispielsweise Grün und definieren Sie auf dem Reiter Hintergrund einen grünen Hintergrund.

Danach klicken Sie in eine Zelle und wählen Format / Bedingte Formatierung / Bedingung. Aus dem ersten Drop-down-Menü suchen Sie den Eintrag Formel ist aus. Ins Feld dahinter schreiben Sie Folgendes:

UND(NICHT(ISTLEER(A1));A1=0)

Darunter suchen Sie aus dem Aufklappmenü neben Vorlage Ihre selbst erstellte Formatvorlage namens Grün aus und bestätigen über OK. Calc färbt die Zelle nun grün ein, wenn sie nicht leer ist und der Wert 0 beträgt. Nur wenn beide Voraussetzungen erfüllt sind, wendet die Tabellenkalkulation die Formatvorlage auf die Zelle an.

Tipp: Neues "Drucken"-Symbol für die Symbolleiste

Ein Klick auf das Icon mit dem Drucker in der Symbolleiste öffnet nicht etwa einen Dialog, in dem Sie das Gerät, das Seitenlayout und andere Optionen festlegen, sondern schickt das Dokument ohne weitere Nachfrage an den Standarddrucker. Ein Fenster, in dem Sie weitere Einstellungen vornehmen können, erhalten Sie hingegen über Datei / Drucken oder die Tastenkombination [Strg]+[P]. Wenn Sie gerne ein Symbol hätten, das nicht sofort alles zu Papier bringt, sondern dieselben Konfigurationsmöglichkeiten bietet, dann fügen Sie einfach eines zur Leiste hinzu:

  1. Öffnen Sie über Ansicht / Symbolleisten / Anpassen einen Dialog zur Konfiguration der Symbolleisten. Im Drop-down-Menü oben ist die Symbolleiste Standard bereits ausgewählt.
  2. Klicken Sie auf die Schaltfläche Hinzufügen. Im neuen Dialogfenster wählen Sie aus der linken Liste (Bereich) den Eintrag Dokumente, dann rechts den Eintrag Drucken (Abbildung 6).
  3. Ein Klick auf Hinzufügen übernimmt die ausgewählte Schaltfläche in die Symbolleiste sowie in die Liste Befehle im Bereich Symbolleisteninhalt des vorigen Dialogs Anpassen.
  4. Dort können Sie das Icon noch mit den Pfeiltasten oder per Drag & Drop mit der Maus an die gewünschte Stelle verschieben.

    Abbildung 6: Ein neues Symbol fügen Sie mit wenigen Mausklicks zu den Symbolleisten hinzu.

Über Schließen und OK beenden Sie die Einrichtung. Die Einstellungen gelten übrigens nicht automatisch für alle LibreOffice-Module. Haben Sie die Leiste in Writer angepasst, und möchten Sie das neue Symbol auch in Calc nutzen, dann wiederholen Sie die Schritte. Der nächste Tipp zeigt, wie Sie dem neuen Symbol einen anderen Look verpassen.

Tipp: Schaltflächen für Symbole verändern

Wenn Sie wie im vorigen Tipp gezeigt ein neues Drucken-Symbol zur Leiste hinzugefügt haben, dann sieht dies in der Voreinstellung genauso aus wie das alte Icon, das Dateien ohne weitere Nachfrage an den Standarddrucker schickt. Damit Sie die beiden Symbole besser voneinander unterscheiden können, weisen Sie einem von beiden eine andere Schaltfläche zu. Öffnen Sie wieder über Ansicht / Symbolleisten / Anpassen den Dialog zur Leisteneinrichtung. Im Drop-down-Menü Symbolleisteninhalt sollte wieder Standard stehen.

Wechseln Sie im Feld Befehle zu Ihrem neu hinzugefügten Symbol und klicken Sie rechts auf Ändern / Symbol austauschen. Im nächsten Dialog finden Sie viele verschiedene Icons, aus denen Sie etwas Passendes aussuchen können. Ist nichts dabei, können Sie optional über Importieren ein eigenes Bildchen in die Sammlung aufnehmen. Nach einem Klick auf OK hat die Schaltfläche bereits den neuen Look.

Abbildung 7: Über "Ändern" / "Symbol austauschen" weisen Sie den Schaltflächen der Symbolleisten ein anderes Icon zu.

Tipp: Aussehen der Symbolleisten

Ob die Symbolleisten die bunten Icons, zusätzlich Text neben den Schaltflächen oder sogar nur die Beschriftungen anzeigen, bestimmen Sie ebenfalls im Dialog Ansicht / Symbolleisten / Anpassen. Klicken Sie auf die Schaltfläche Symbolleiste. Dort finden Sie unten die drei Optionen Nur Symbole, Nur Text oder Symbole & Text.

Tipp: Writer: Mehrere Absätze gleichzeitig formatieren

LibreOffice besitzt eine praktische Funktion, mit der Sie vielen Absätzen per Mausklick dieselbe Formatvorlage zuweisen. Rufen Sie über Format / Formatvorlagen oder über [F11] den Dialog Formatvorlagen auf. Wählen Sie nun eine Vorlage aus, die Sie zuweisen möchten. Danach klicken Sie rechts oben auf das kleine Icon, das den so genannten Gießkannenmodus aktiviert (Abbildung 8). Der Mauszeiger verändert sich nun und sieht wie eine kleine Kanne aus. Klicken Sie damit einmal in jeden Absatz, den Sie formatieren möchten. Nach Abschluss der Arbeiten drücken Sie [Esc] oder klicken erneut auf das Gießkannensymbol, um den Modus zu verlassen.

Abbildung 8: Mit dem Gießkannenmodus bringen Sie bequem Absätze per Mausklick ins gleiche Format.

Tipp: Writer: Absatzvorlagen für nachfolgenden Abschnitt

Mit einem kleinen Trick und ohne Umweg über den Dialog Formatvorlagen weisen Sie in Writer die Vorlage des aktuellen Absatzes dem nachfolgenden und umgekehrt zu. Damit der nachfolgende Abschnitt dieselbe Formatvorlage erhält, gehen Sie ans Ende des ersten Absatzes und drücken so oft die Taste [Entf], bis der nachfolgende Abschnitt nach oben rückt und mit dem aktuellen verschmilzt. Die Formatvorlage passt Writer automatisch an. Drücken Sie nun [Eingabe], fügen Sie wieder einen Absatz ein, das Format bleibt aber dasselbe.

Tipp: Writer: Standardvorlage des Dokuments wechseln

Angenommen, Sie haben in Writer einen Text auf Grundlage der Formatvorlage Standard geschrieben. Nun möchten Sie im gesamten Dokument von Standard zur Vorlage Textkörper, alle anderen Formatierungen und Vorlagen jedoch beibehalten. Am schnellsten geht das über Bearbeiten / Suchen & Ersetzen ([Strg]+[Alt]+[F]). Klappen Sie zunächst per Klick auf Mehr Optionen den Dialog aus und setzen Sie dann ein Häkchen bei Suche nach Vorlagen.

Im oberen Bereich stellen Sie im Drop-down-Menü Suchen nach auf Standard, und im Aufklappmenü darunter Ersetzen durch wählen Sie die Formatvorlage Textkörper. Ein Klick auf die Schaltfläche Ersetze alle tauscht im gesamten Dokument die Formatvorlage Standard gegen Textkörper aus. Ein Klick auf Ersetzen hingegen geht schrittweise vor. Ein Klick auf Schließen beendet die Aktion.

Abbildung 9: Über "Suchen & Ersetzen" tauschen Sie auch Formatvorlagen im Dokument aus.

Tipp: Calc: Das Alter von Personen ermitteln

Sie möchten bei einer statistischen Aufbereitung der Vereinszahlen ermitteln, welche Altersgruppen vertreten sind. Mit ein paar Formeln bringen Sie Calc dazu, bei der Auswertung zu helfen (Abbildung 10). Los geht's mit der Berechnung des Alters der einzelnen Mitglieder. Im Beispiel enthält die Spalte A die Nachnamen, die Spalte B die Vornamen und C das Geburtsdatum. Die Spalte D zeigt für jedes Mitglied an, wie alt es ist. Dabei hilft eine Formel. Für die dritte Reihe lautet diese so:

=JAHRE(C3;HEUTE();0)

In D3 erscheint somit als Ergebnis 50. Passen Sie für die Zellen D4, D5, D6 und so weiter die Formel entsprechend an, so dass Sie jeweils das Alter für C4, C5, C6 und so weiter berechnet. Die Formel liefert mit der Funktion Jahre(Ausgangsdatum, Enddatum, Art) das genaue Alter einer Person. Besonders wichtig dabei ist der dritte Parameter Art. Im Beispiel haben wir die 0 gewählt; sie weist der Funktion die Jahresberechnung in Intervallen zu, das heißt, die Jahre laufen von Geburtstag zu Geburtstag.

Abbildung 10: Calc berechnet für Sie, in welchen Altersgruppen die Mitglieder eines Vereins sind.

Tipp: Calc: Die Altersgruppen eines Vereins ermitteln

In einem nächsten Schritt können Sie die Personen nun in Altersgruppen einteilen. In unserem Beispiel möchten wir wissen, wie viele Mitglieder jeweils bis 20, 30, 40, 50, 60 und 70 Jahre alt sind. Das Ganze findet in der Spalte F statt. Schreiben Sie zuerst in die Zellen F3 bis F8 einfach nur die Zahlen 20, 30, 40, 50, 60 und 70. Jetzt formatieren Sie die Zahlen mit einem benutzerdefinierten Format. Markieren Sie mit einem Klick auf F die ganze Spalte, klicken Sie mit der rechten Maustaste darauf und entscheiden sich für Zellen formatieren. Auf dem ersten Reiter Zahlen wählen Sie Benutzerdefiniert aus dem Feld Kategorie und tragen unten ins Feld Format-Code Folgendes ein:

"bis "0" Jahre"

In den Zellen F3 bis F8 steht jetzt jeweils der Text bis 20 Jahre, bis 30 Jahre und so weiter.

Mit einer Matrixformel bringen Sie Calc nun dazu, Werte in einem gesamten Zellbereich gleichzeitig zu berechnen. Markieren Sie den Bereich zwischen G3 und G8, indem Sie in die Zelle G3 klicken und mit gedrückt gehaltener Umschalttaste auf G8 klicken. In die Rechenleiste oben schreiben Sie nun die Formel, die Sie auch in Abbildung 10 sehen:

=HÄUFIGKEIT(D3:D22;F3:F8)

Schließen Sie den Vorgang mit der Tastenkombination [Strg]+[Umschalt]+[Eingabe] ab. Als Ergebnis sehen Sie die Anzahl der Mitglieder in den jeweiligen Altersgruppen.

Die Zuordnung der einzelnen Personen zu den Altersstufen findet mit der Funktion HÄUFIGKEIT(Daten; Klassen) statt. Der Parameter Daten umfasst die auszuwertenden Zellen, also D3 bis D22 mit dem Alter der Mitglieder. (Ist Ihre Liste länger, passen Sie den Wert gegebenenfalls an.) Der Parameter Klassen umfasst den Wertebereich der Altersstufen, als F3 bis F8. Die Tastenkombination [Strg]+[Umschalt]+[Eingabe] beendet die Matrixformel und sorgt dafür, dass Calc die Ergebnisse sofort in den Zellen G3 bis G8 ausgibt. Beachten Sie, dass Sie die umgebenden geschweiften Klammern in der Rechenleiste nicht selbst hinzufügen, sondern wirklich nur die Formel eintragen. Die Klammern setzt die Tabellenkalkulation selbst, da sie am Shortcut [Strg]+[Umschalt]+[Eingabe] erkennt, dass eine Matrixformel vorliegt.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare