Archiv des LibreOffice- und OpenOffice.org-Wiki

[ÜberSicht] [TitelIndex] [WortIndex] [SeiteFinden

Editieren

1. Umwandlungen vom und ins Textformat

1.1. Zahlen ins Textformat wandeln

1.1.1. Führende Null bei PLZ

Nicht immer genügt es, die führende Null bei Postleitzahlen mit dem entsprechenden Zahlenformat zu erzwingen. Dann kann man die Zahl mit TEXT(Zahl;Format) in die richtige Darstellung bringen.

A

B

C

D

1

PLZ

Ort

Verkettung

Formel

2

4679

Irgendwo

4679 Irgendwo

=VERKETTEN(A2;" ";B2)

3

86473

Sonstwo

86473 Sonstwo

=VERKETTEN(A3;" ";B3)

4

60573

Nirgendwo

60573 Nirgendwo

=VERKETTEN(A4;" ";B4)

5

5642

Überall

5642 Überall

=VERKETTEN(A5;" ";B5))

6

7

4679

Irgendwo

04679 Irgendwo

=VERKETTEN(TEXT(A7;"00000");" ";B7)

8

86473

Sonstwo

86473 Sonstwo

=VERKETTEN(TEXT(A8;"00000");" ";B8)

9

60573

Nirgendwo

60573 Nirgendwo

=VERKETTEN(TEXT(A9;"00000");" ";B9)

10

5642

Überall

05642 Überall

==VERKETTEN(TEXT(A10;"00000");" ";B10)

1.1.2. Kalender- und Zeitdaten als und in Zeichenketten darstellen

A

B

C

1

Zahl im Datum/Zeit-Format

Formel

2

28.08.05 17:30

17

=STUNDE(A2)

3

nachmittags

=WENN(B2<=12;"vormittags";"nachmittags")

4

Sonntag, 28. August 2005

=TEXT(A2;"NNNNT. MMMM JJJJ")

5

17:30

=TEXT(STUNDE(A2);"00")&":"&TEXT(MINUTE(A2);"00")

7

Wir treffen uns am Sonntag, 28. August 2005 um 17:30 nachmittags
Formel: =VERKETTEN("Wir treffen uns am "; TEXT(A2;"NNNNT. MMMM JJJJ");" um  "; TEXT(STUNDE(A2);"00")&":"&TEXT(MINUTE(A2);"00"); " ";WENN(STUNDE(A2)<=12;"vormittags";"nachmittags"))

1.1.3. Weitere Textformate für Zahlenwerte

Im Parameter: Format der Funktion TEXT() können die gleichen Schreibweisen benutzt werden, wie sie im Zellformat → Register: Zahlen zur Verfügung stehen:

A

B

C

1

Zahl

Zeichenkette

Formel

3

0,075

7,50 %

=TEXT(A3;"0,00 %")

4

2,75

2 3/4

=TEXT(A4;"# ?/?")

2

12,35

12,35 €

=TEXT(A2;"#.##0,00 [$€-407];[ROT]-#.##0,00 [$€-407]")

1.1.4. Funktion DM() für Währungsformate

Mit der Funktion DM() wird eine Zahl mit demjenigen Währungszeichen dargestellt, welches unter Extras → Optionen → Spracheinstellungen → Sprachen als Standardwährung eingestellt ist. Das Ergebnis ist auch ein Textformat, mit dem nicht gerechnet werden kann.

A

B

C

1

12,35

12,35 €

=DM(A1;2)

1.1.5. Funktion FEST() für eine feste Anzahl Nachkommastellen

Mit der Funktion Fest() wird eine Zahl in ein Textformat überführt mit einer fest definierten Anzahl Nachkommastellen. Optional kann bestimmt werden, ob ein Tausendertrennzeichen verwendet werden soll.

A

B

C

1

8123

8123,0000

=FEST(A1;4;1)

2

8123

8.123,0000

=FEST(A2;4;0)

1.2. Zahl aus einer Zeichenkette herausfiltern

1.2.1. Wenn die Position und Länge der Ziffer bekannt ist

Aus der Zeichenkette 28 Äpfel soll die Zahl herausgefiltert und im Zahlenformat zur Verfügung gestellt werden, um damit rechnen zu können. Dazu wird zunächst nach der Position des Leerzeichens gesucht, anschliessend die Zeichen vom Anfang der Zelle bis zum Leerzeichen herausgeschnitten und die so erhaltene Zeichenfolge in eine Zahl umgewandelt.

A

B

C

1

28 Äpfel

28

=WERT(TEIL(A1;1;FINDEN(" ";A1)-1))

Das Ganze kann man auch mit einer Prüfung verbinden, die abklärt, ob es sich bei der gefundenen Zeichenkette überhaupt um eine Zahl handelt:

A

B

C

1

Zeichenkette

Anzahl mal 5

Formel

2

28 Äpfel

140

=WERT(TEIL(A2;1;FINDEN(" ";A2)-1))*5

3

achtundzwanzig Äpfel

Hey, ich brauche Zahlen zum Rechnen!

WENN(ISTZAHL(WERT(TEIL(A3;1;FINDEN(" ";A3)-1))); WERT(TEIL(A3;1;FINDEN(" ";32)-1))*5; "Hey, ich brauche Zahlen zum Rechnen!")

1.2.2. Wenn weder Position noch Anzahl der Ziffern bekannt ist

Mit den Funktionen FINDEN() oder SUCHEN() kann man zwar einen Text auf das Vorkommen einer bestimmten Zeichenfolge untersuchen, aber man muss ein genaues Zeichenmuster mitgeben können. Reguläre Ausdrücke im Sinn von ^[0-9] sind nicht möglich.

Trotzdem kann man reguläre Ausdrücke heranziehen, um das Problem zu lösen:
Im folgenden Beispiel wird allen Ziffern, die nach einem Leerzeichen stehen, mit Hilfe von Bearbeiten → Suchen&Ersetzen ein Zeichen vorangestellt, das sonst nicht vorkommt, im Beispiel ist das #. Damit haben wir ein eindeutiges Zeichen, mit dem wir die Startposition der Ziffern lokalisieren können. In einem zweiten Suchen/Ersetzen-Durchlauf werden alle Ziffern, die vor einem Leerzeichen stehen, ergänzt um das Zeichen *, womit auch das Ende der Ziffer klar ist.

Texte vor dem Aufruf von Suchen/Ersetzen:

A

1

Heute haben wir 47 Äpfel verkauft.

2

Gestern haben wir 113 Äpfel verkauft.

3

Vorgestern haben wir 9 Äpfel verkauft.

Der erste Suchaufruf wird mit diesen Einstellungen gestartet:

Das Feld Suchen nach beginnt mit einem Leerzeichen.

SuchenErsetzen1.png

Der zweite Suchaufruf wird mit diesen Einstellungen gestartet:

Das Feld Suchen nach endet mit einem Leerzeichen.

SuchenErsetzen2.png

Texte nach dem Aufruf von Suchen/Ersetzen:

A

Alle Ziffern beginnen 2 Stellen nach # und enden 2 Stellen vor *, die Ziffernlänge ergibt sich aus der Differenz zwischen den Fundstellen und nach Abzug des Leerzeichens.

1

Heute haben wir# 47 *Äpfel verkauft.

2

Gestern haben wir# 113 *Äpfel verkauft.

3

Vorgestern haben wir# 9 *Äpfel verkauft.

A

B

C

1

Heute haben wir# 47 *Äpfel verkauft.

47

=WERT(TEIL(A1;SUCHEN("#";A1)+2;SUCHEN("*";A1)-SUCHEN("#";A1)-3))

2

Gestern haben wir# 113 *Äpfel verkauft.

113

=WERT(TEIL(A2;SUCHEN("#";A2)+2;SUCHEN("*";A2)-SUCHEN("#";A2)-3))

3

Vorgestern haben wir# 9 *Äpfel verkauft.

9

=WERT(TEIL(A3;SUCHEN("#";A3)+2;SUCHEN("*";A3)-SUCHEN("#";A3)-3))

Wenn die Original-Zeichenkette ebenfalls zur Verfügung stehen soll, kann in einer Zusatzspalte der Text wieder von die Markierungszeichen befreit werden:

A

B

C

1

Heute haben wir# 47 *Äpfel verkauft.

Heute haben wir 47 Äpfel verkauft.

=WECHSELN(WECHSELN(A1;"# ";" ");" *";" ")

2

Gestern haben wir# 113 *Äpfel verkauft.

Gestern haben wir 113 Äpfel verkauft.

=WECHSELN(WECHSELN(A2;"# ";" ");" *";" ")

3

Vorgestern haben wir# 9 *Äpfel verkauft.

Vorgestern haben wir 9 Äpfel verkauft.

=WECHSELN(WECHSELN(A3;"# ";" ");" *";" ")

1.3. Die Funktionen T() und N()

Mit der Funktion T() wird ein Zahlenwert in einen leeren Textstring verwandelt, wohingegen eine Zahl, die als Text formatiert ist, nicht verändert wird.

Mit der Funktion N() wird ein Wert in eine Zahl mit dem Wert 0 verwandelt, wohingegen eine Zahl, die auch als solche formatiert ist, nicht verändert wird.

A

B

C

D

E

In Zelle A1 steht die Zahl im Zahlenformat, in Zelle A2 im Zeichenformat (mit Hochkomma vor der Zahl)

1

    12345

=T(A1)

12345

=N(A1)

2

12345    

12345

=T(A2)

0

=N(A2)

Die Funktion T() wird auch im Zusammenhang mit Vorlagenzuweisungen benötigt.
Siehe auch: show

1.4. Zellen mit unterschiedlichem Format vergleichen

Wenn in zwei Zellen die gleiche Zahl steht, aber eine dieser Zellen als Text formatiert ist, während die andere ein Zahlenformat darstellt, so ergibt eine Abfrage mit WENN(A1=A2) FALSCH.

Mit der Funktion IDENTISCH() kann man die Berücksichtigung des Formates unterbinden:

A

B

C

Die linksbündige Zahl liegt jeweils im Textformat vor, während die rechtsbündige Zahl ein Zahlenformat darstellt.

1

     23

FALSCH

=WENN(A1=A2)

2

23     

3

4

     23

WAHR

=IDENTISCH(A4;A5)

5

23     

2. Römische, arabische Ziffern

2.1. Römische Ziffern

Bei der Darstellung von Zahlen als römische Ziffern gibt es bei einigen Ziffernkombinationen mehrere Schreibweisen. Diesem Umstand trägt die Funktion mit dem Modus Rechnung.

A

B

C

D

1

999

CMXCIX

=RÖMISCH(A1)

=(1000-100)+(100-10)+(10-1)

2

LMVLIV

=RÖMISCH(A1;1)

=(1000-50)+(50-5)+(5-1)

3

XMIX

=RÖMISCH(A1;2)

=(1000-10)+(10-1)

4

VMIV

=RÖMISCH(A1;3)

=(1000-50)+(50-1)

5

IM

=RÖMISCH(A1;4)

=1000-1

Die reine Additionsvariante wird von Calc nicht angeboten, es versteht sie aber und kann sie mit der Funktion ARABISCH() (s. u.) umsetzen.

2.2. Arabische Ziffern

A

B

C

1

CMXCIX

999

=ARABISCH(A1)

2

999

=ARABISCH("DCCCCLXXXXVIIII")

KategorieCalc


LizenzBedingungen | AnbieterKennzeichnung | DatenschutzErklärung | Stand: 2013-04-28