Definieren von Bedingungen

Bedingungen sind logische Ausdrücke, mit denen Sie die Anzeige von Feldbefehlen und Bereichen in Ihrem Dokument steuern können. Die folgenden Beispiele beziehen sich zwar auf Feldbefehle, sind jedoch auch auf Bereiche anwendbar.

Sie können Bedingungen für folgende Arten von Feldbefehlen definieren:

  1. Bedingter Text: Zeigt Text A an, wenn die Bedingung erfĂĽllt ist, oder Text B, wenn sie nicht erfĂĽllt ist.

  2. Versteckter Text: Versteckt den Feldinhalt, wenn die Bedingung erfĂĽllt ist.

  3. Versteckter Absatz: Versteckt den Absatz, wenn die Bedingung erfĂĽllt ist.

  4. Beliebiger Datensatz und nächster Datensatz: Steuert den Zugriff auf Datensätze in einer Datenbank.

Am einfachsten definieren Sie eine Bedingung, indem Sie unter Verwendung der folgenden Werte den logischen Ausdruck direkt in eines der Felder Bedingung eingeben:

WAHR

Die Bedingung ist immer erfüllt. Alternativ können Sie auch einen beliebigen Wert ungleich 0 als Bedingungstext eintragen.

FALSCH

Die Bedingung ist nicht erfüllt. Alternativ können Sie auch den Wert 0 angeben.


note

Wenn Sie das Feld Bedingung leer lassen, wird die Bedingung als nicht erfĂĽllt interpretiert.


Verwenden Sie beim Definieren von Bedingungen dieselben Elemente wie beim Definieren einer Formel: Vergleichsoperatoren, mathematische und statistische Funktionen, Zahlenformate, Variablen und Konstanten.

Beim Definieren einer Bedingung können Sie folgende Variablenarten verwenden:

  1. Vordefinierte LibreOffice-Variablen auf Basis statistischer Angaben zu Dokumenteigenschaften

  2. Benutzerdefinierte Variablen, die mit dem Feldbefehl "Variable setzen" erstellt werden

  3. Variablen auf Grundlage von Benutzerdaten

  4. Variablen auf Grundlage von Datenbank-Feldinhalten

Interne Variablen, beispielsweise Seiten- oder Kapitelnummern, können Sie in Bedingungsausdrücken nicht verwenden.

Bedingungen und Variablen

Die folgenden Beispiele verwenden eine Variable namens "x":

x == 1 oder x EQ 1

Die Bedingung ist erfĂĽllt, wenn "x" gleich 1 ist.

x != 1 oder x NEQ 1

Die Bedingung ist erfĂĽllt, wenn "x" ungleich 1 ist.

sinx == 0

Die Bedingung ist erfĂĽllt, wenn "x" ein Vielfaches von Pi ist.


Um Vergleichsoperatoren mit Zeichenketten zu verwenden, mĂĽssen die Operanden in doppelte AnfĂĽhrungszeichen eingeschlossen werden:

x == "ABC" oder x EQ "ABC"

Prüft, ob die Variable "x" die Zeichenkette "ABC" enthält (wahr = Bedingung erfüllt) oder nicht (falsch = Bedingung nicht erfüllt).

x == "" oder x EQ ""

beziehungsweise

!x oder NOT x

Prüft, ob die Variable "x" eine leere Zeichenkette enthält.


note

Der Vergleichsoperator "ist gleich" muss in Bedingungen durch ein doppeltes Gleichheitszeichen (==) dargestellt werden. Wenn Sie beispielsweise eine Variable "x" mit dem Wert 1 definieren, können Sie die Bedingung als x==1 eingeben.


Benutzerdaten

Sie können Benutzerdaten mit einbeziehen, wenn Sie Bedingungen definieren. Um Ihre Benutzerdaten zu ändern, wählen Sie – LibreOffice – Benutzerdaten. Benutzerdaten müssen als Zeichenketten eingegeben werden. Sie können die Benutzerdaten mit "==" (ist gleich), "!=" (ist nicht gleich) oder "!" (nicht) abfragen.

In der folgenden Tabelle sind die Benutzerdaten-Variablen und ihre Bedeutung aufgelistet:

Variable

Bedeutung

user_firstname

Vorname

user_lastname

Nachname

user_initials

KĂĽrzel

user_company

Firma

user_street

StraĂźe

user_country

Land

user_zipcode

Postleitzahl

user_city

Ort

user_title

Titel

user_position

Position

user_tel_work

Geschäftliche Telefonnummer

user_tel_home

Private Telefonnummer

user_fax

Faxnummer

user_email

E-Mail-Adresse

user_state

Staat (nicht in allen LibreOffice Versionen)


Um beispielsweise einen Absatz, Text oder Bereich vor einem Benutzer mit bestimmten Initialen (beispielsweise "LM") zu verbergen, geben Sie folgende Bedingung ein: user_initials=="LM".

Bedingungen und Datenbankfelder

Sie können Bedingungen zum Zugriff auf Datenbanken oder Datenbankfelder definieren. Beispielsweise können Sie in einer Bedingung den Inhalt eines Datenbankfelds überprüfen oder Datenbankfelder in logischen Ausdrücken verwenden. In folgender Tabelle finden Sie einige weitere Beispiele zur Verwendung von Datenbanken in Bedingungen:

Beispiel

Bedeutung

Datenbank.Tabelle.Firma

Datenbank.Tabelle.Firma NEQ ""

Datenbank.Tabelle.Firma != ""

Liefert Wahr, wenn das Datenfeld FIRMA gefĂĽllt ist. (Im ersten Beispiel ist kein Operator erforderlich.)

!Datenbank.Tabelle.Firma

NOT Datenbank.Tabelle.Firma

Datenbank.Tabelle.Firma EQ ""

Datenbank.Tabelle.Firma == ""

Gibt WAHR zurĂĽck, wenn das Feld FIRMA leer ist.

Datenbank.Tabelle.Firma !="Sun"

Datenbank.Tabelle.Firma NEQ "Sun"

Gibt WAHR zurĂĽck, wenn der aktuelle Eintrag im Feld FIRMA nicht "Sun" ist. (Das Ausrufezeichen steht fĂĽr das logische NOT.)

Datenbank.Tabelle.Vorname AND Datenbank.Tabelle.Name

Liefert Wahr, wenn der Datensatz sowohl Vor- als auch Nachnamen enthält.


note

Beachten Sie den Unterschied zwischen dem logischen Nicht "!" (NOT) und dem Vergleichsoperator Ungleich "!=" (NEQ).


Wenn Sie in einer Bedingung auf ein Datenbankfeld Bezug nehmen, verwenden Sie die Form Datenbankname.Tabellenname.Feldname. Wenn einer der Namen ein Operatorzeichen enthält, beispielsweise ein Minuszeichen (-), müssen Sie den Namen in eckige Klammern einschließen. Beispiel: Datenbankname.[Tabellen-Name].Feldname. Innerhalb von Feldnamen dürfen keine Leerzeichen verwendet werden.

Beispiel: Verstecken von leeren Datenbankfeldern

Sie können eine Bedingung erstellen, die leere Felder verbirgt, beispielsweise wenn das Feld FIRMA für einige Datensätze keine Angaben enthält.

Wählen Sie Versteckter Absatz und geben Sie folgende Bedingung ein: Adressbuch.Adressen.Firma EQ ""

oder

NOT Adressbuch.Adressen.Firma

Wenn das Datenbankfeld FIRMA leer ist, ist die Bedingung erfĂĽllt, und der Absatz wird verborgen.

note

Um verborgene Absätze auf dem Bildschirm anzuzeigen, wählen Sie – LibreOffice Writer – Ansicht und deaktivieren Sie das Markierfeld Felder anzeigen: Verborgene Absätze.


Beispiele fĂĽr Bedingungen in Feldbefehlen

Die folgenden Beispiele verwenden den Feldbefehl "Bedingter Text", gelten jedoch auch für alle anderen Feldbefehle, die sich mit einer Bedingung verknüpfen lassen. Die für Bedingungen verwendete Syntax wird auch für die Feldbefehle "Versteckter Text", "Versteckter Absatz", "Beliebiger Datensatz" und "Nächster Datensatz" verwendet.

So lassen Sie bedingten Text auf Grundlage der Seitenanzahl anzeigen:

  1. Wählen Sie Einfügen – Feldbefehl – Weitere Feldbefehle… – Register: Funktionen.

  2. Klicken Sie in der Liste Feldtyp auf "Bedingter Text".

  3. Geben Sie im Feld Bedingung den Ausdruck "Page == 1" ein.

  4. Geben Sie im Feld Dann den Text "Das Dokument hat nur eine Seite" ein.

  5. Geben Sie im Feld Sonst den Text "Das Dokument hat mehrere Seiten" ein.

  6. Klicken Sie auf EinfĂĽgen und dann auf SchlieĂźen.

So lassen Sie bedingten Text auf Grundlage einer benutzerdefinierten Variable anzeigen:

  1. Wählen Sie Einfügen – Feldbefehl – Weitere Feldbefehle… – Register: Variablen.

  2. Klicken Sie in der Liste Feldtyp auf "Variable setzen".

  3. Geben Sie im Feld Name "Gewinn" ein.

  4. Geben Sie im Feld Wert den Wert "5000" ein.

  5. Klicken Sie auf EinfĂĽgen.

  6. Klicken Sie auf das Register Funktionen und anschlieĂźend in der Liste Feldtyp auf "Bedingter Text".

  7. Geben Sie im Feld Bedingung den Ausdruck "Gewinn < 5000" ein.

  8. Geben Sie im Feld Dann den Text "Ziel ist nicht erreicht" ein.

  9. Geben Sie im Feld Sonst den Text "Ziel ist erreicht" ein.

  10. Klicken Sie auf EinfĂĽgen.

Um den Inhalt der Variablen "Gewinn" zu bearbeiten, doppelklicken Sie auf das Variablenfeld.

So lassen Sie bedingten Text auf Grundlage von Datenbank-Feldinhalten anzeigen:

Der erste Teil dieses Beispiels fĂĽgt ein Leerzeichen zwischen den Feldern "Vorname" und "Nachname" in einem Dokument ein, und der zweite Teil fĂĽgt ausgehend vom Inhalt eines Feldes Text ein. FĂĽr dieses Beispiel muss eine Adressdatenquelle in LibreOffice registriert sein.

  1. Wählen Sie Einfügen – Feldbefehl – Weitere Feldbefehle… – Register: Datenbank.

  2. Wählen Sie in der Liste Feldtyp die Option "Seriendruck-Feld".

  3. Doppelklicken Sie im Feld Datenbankauswahl auf ein Adressbuch, klicken Sie auf "Vorname" und dann auf EinfĂĽgen. Wiederholen Sie diese Schritte fĂĽr das Feld "Nachname".

  4. Setzen Sie den Cursor im Dokument zwischen die beiden Felder, drĂĽcken Sie die Leertaste und gehen Sie dann zum Dialog Feldbefehl zurĂĽck:

  5. Klicken Sie auf das Register Funktionen und anschlieĂźend in der Liste Feldtyp auf "Bedingter Text".

  6. Geben Sie im Feld Bedingung folgenden Text ein: "Adressbuch.Adressen.Vorname".

  7. Geben Sie im Feld Dann ein Leerzeichen ein und lassen Sie das Feld Sonst leer.

Sie können nun eine Bedingung verwenden, um ausgehend vom Inhalt des Felds "Vorname" bestimmten Text einzufügen.

  1. Klicken Sie im Dialog Feldbefehl auf das Register Funktionen.

  2. Klicken Sie im Feld Feldtyp auf "Bedingter Text".

  3. Geben Sie im Feld Bedingung folgenden Text ein: Adressbuch.Adressen.Vorname == "Michael"

  4. Geben Sie im Feld Dann den Text "Lieber" ein.

  5. Geben Sie im Feld Sonst den Text "Hallo" ein.

  6. Klicken Sie auf EinfĂĽgen.

Bitte unterstĂĽtzen Sie uns!