15.9 Textfunktionen
Gelegentlich ist es sinnvoll, eine Zeichenfolge in einer Zelle durch eine Formel zu erzeugen, die verschiedene Zeichen oder Zeichenfolgen verknüpft.
Zahlen in Text umwandeln
Angenommen, Sie wollen Artikelnummern um zwei Zeichen erweitern, die die Warengruppe beinhalten. Wenn Sie in die Zelle C9
=C5&C8
eintragen, wird der Inhalt von Zelle C5 mit dem Inhalt von Zelle C8 verkettet. Wenn C5 das Warengruppenkennzeichen »PX« enthält und C8 die Artikelnummer 3370086‘, ist das Ergebnis in Zelle C9 »PX3370086«. Wenn die bisherige Artikelnummer in C8 als Zahl und nicht als Zeichenfolge eingetragen worden ist, wird die Zahl in eine Zeichenfolge umgewandelt. Anschließend können Sie diese Formel noch in ihr Ergebnis verwandeln. Wollen Sie zwischen den beiden Textelementen eine Leertaste sehen, müssen Sie Folgendes schreiben:
=C5&" "&C8
Sortierung durch Textfunktionen
Sollen umgekehrt bei Artikelbezeichnungen, die immer auf den zwei ersten oder letzten Stellen ein Kennzeichen der Warengruppe enthalten, diese abgelesen werden, etwa um eine Liste danach zu sortieren, können Sie mit einer Textfunktion die beiden Stellen herausziehen.
=RECHTS(C9;2)
liefert die beiden letzten Stellen,
=LINKS(C9;2)
die beiden ersten Stellen.
Logische Werte in Texte aufnehmen
Auch eine Zelle mit einem logischen Wert kann mit dem Inhalt einer anderen Zelle zu einem Text verkettet werden.
="Die Behauptung, der Umsatz steigt, ist "&C9
ergibt den Satz »Die Behauptung ... ist FALSCH«, wenn die Bedingung in C9 nicht erfüllt ist.
Verknüpfung von Text mit Datum
Etwas schwieriger ist die Verknüpfung von Text mit einem Datum. Wenn Sie einen Bezug auf ein Datumsfeld benutzen, liefert Excel anstelle des Datums die serielle Zahl, mit der das Datum intern dargestellt wird. Das Problem ist lösbar, wenn Sie mit den anderen Datumsfunktionen arbeiten. Hier ein Beispiel: Wenn Sie ein Tagesformular verwenden, in dessen Kopf stehen soll: »Abrechnung vom…« ‚ können Sie in eine Zelle eintragen:
="Abrechnung vom " &TAG(HEUTE())&"."&MONAT(HEUTE()&".20" & JAHR(HEUTE())
Das Formular wird dann automatisch mit dem Tagesdatum gedruckt.
Referenz der Textfunktionen
BAHTTEXT()
Syntax: BAHTEXT(Zahl)
Beispiel: BAHTEXT(1)
baht.epsWandelt eine Zahl in Text im Währungsformat (Baht) um.
CODE()
Syntax: CODE(Text)
Beispiel: CODE("T")
Ergebnis: 84
Diese Funktion liefert den ANSI-Code des ersten Zeichens in der Zeichenkette, die als Argument eingegeben wird (direkt oder als Bezug). Bezieht sich das Argument auf eine leere oder eine numerische Zelle, liefert die Funktion die Meldung #WERT.
DM()
Syntax: DM(Zahl;Dezimalstellen)
Beispiel: DM(58721,4567;2)
Ergebnis: 58721,46 DM
Die Funktion wandelt eine Zahl in eine Zeichenkette im Währungsformat um. Durch das optionale Argument Dezimalstellen kann die Anzahl der Ziffern rechts vom Komma festgelegt werden, die dabei gerundet und nicht abgeschnitten werden. Wird das Argument nicht angegeben, dann wird 2 angenommen. Wird ein negativer Wert eingegeben, wird auf entsprechende Stellen vor dem Komma gerundet.
ERSETZEN()
Syntax: ERSETZEN(Alter_Text;Erstes_Zeichen;Anzahl_Zeichen;Neuer_Text)
Beispiel: ERSETZEN("Müller";2;5;"eier")
Ergebnis: Meier
Mit dieser Funktion können in einer Zeichenfolge ein oder mehrere Zeichen durch neue Zeichen überschrieben werden. Die Funktion hat vier Argumente:
1. Alter_Text ist die Zeichenfolge, die durch eine andere ersetzt werden soll.2. Erstes_Zeichen legt eine Zahl fest, an welcher Stelle in der Zeichenkette mit dem Ersetzen zu beginnen ist. Das erste Zeichen der Zeichenfolge wird mit 1 gezählt.3. Anzahl_Zeichen gibt an, wie viele Zeichen von Beginn an ersetzt, d. h. aus der alten Zeichenfolge gelöscht werden sollen.4. Neuer_Text ist die Zeichenfolge, die anstelle der herausgenommenen Zeichen der alten Zeichenfolge eingefügt werden soll.FEST()
Syntax: FEST(Zahl;Dezimalstellen;Keine_Punkte)
Beispiel: FEST(33654,236;2;WAHR)
Ergebnis: "33654,24" (als Text)
Die Funktion wandelt einen numerischen Wert in eine Zeichenfolge um. Die Anzahl der gewünschten Dezimalstellen muss eingegeben werden, das Ergebnis erscheint gerundet. Geben Sie das Argument Dezimalstellen nicht an, so wird 2 angenommen, wird es negativ eingegeben, dann wird auf die entsprechenden Stellen vor dem Komma gerundet.
Keine_Punkte ist ein Wahrheitswert, der darüber entscheidet, ob eine Tausender-Abtrennung mittels Punkt vorgenommen werden soll. Wird kein Wahrheitswert oder FALSCH angegeben, dann wird die Tausenderabtrennung vorgenommen, andernfalls wird der Punkt nicht mit ausgegeben.
Mit der FEST-Funktion ist es möglich, Zeichenfolgen zusammenzustellen, die Text und Zahlen kombinieren.
FINDEN()
Syntax: FINDEN(Suchtext;Text;Erstes_Zeichen)
Beispiel: FINDEN("&";"Pasta & Vino")
Ergebnis: 7
Die Funktion überprüft, ob eine Suchzeichenfolge (Suchtext) in einer anderen Zeichenfolge (Text) vorkommt.
Die Suche beginnt bei der Position in der Zeichenfolge, die durch den Wert für Erstes_Zeichen bestimmt ist. Ergebnis ist die Position von Suchtext in Text. Wird der Suchtext in der Zeichenfolge nicht gefunden, wird die Meldung #WERT ausgegeben. Die Funktion unterscheidet zwischen Groß- und Kleinschreibung.
GLÄTTEN()
Syntax: GLÄTTEN(Text)
Beispiel: GLÄTTEN("Egon Maier")
Ergebnis: Egon Maier
Entfernt führende und Leerzeichen zwischen Wörtern in Text, sodass jeweils nur ein Leerzeichen zur Worttrennung stehen bleibt.
Die Funktion ist nützlich, um überflüssige Leerzeichen aufzuspüren und um mögliche Fehler beim Sortieren zu vermeiden.
GROSS()
Syntax: GROSS(Text)
Beispiel: GROSS("Kilo")
Ergebnis: KILO
Die Funktion GROSS() wandelt alle Buchstaben aus Text in Großbuchstaben um.
GROSS2()
Syntax: GROSS2(Text)
Beispiel: GROSS2 ("Kurt sChulz")
Ergebnis: Kurt Schulz
Die Funktion wandelt jeweils den ersten Buchstaben eines jeden Wortes in der Zeichenfolge in Großbuchstaben um, die weiteren Zeichen in Kleinbuchstaben. Die Funktion kann zur Erhöhung der Lesbarkeit von Texteinträgen benutzt werden. Sie ist von Nutzen, wenn z. B. Daten von anderen Programmen oder Rechnern übernommen worden sind.
IDENTISCH()
Syntax: IDENTISCH(Text1;Text2)
Beispiel: IDENTISCH("Abra";"Abba")
Ergebnis: FALSCH
Vergleicht zwei Zeichenfolgen und prüft, ob sie exakt übereinstimmen. Nur dann wird als logischer Wert WAHR geliefert, im anderen Fall FALSCH. Leerzeichen und Groß- bzw. Kleinschreibung werden in den Vergleich einbezogen.
KLEIN()
Syntax: KLEIN(Text)
Beispiel: KLEIN("MF2HD")
Ergebnis: mf2hd
Wandelt alle Buchstaben von Text in Kleinbuchstaben um.
LÄNGE()
Syntax: LÄNGE(Text)
Beispiel: LÄNGE("LÄNGE")
Ergebnis: 5
Liefert die Zahl der Zeichen (einschließlich Leerzeichen) von Text.
Ist das Argument der Funktion eine Zelladresse, wird als Ergebnis 0 ausgegeben, wenn die Zelle leer ist. Numerische Zeichen werden wie Text behandelt und auf gleiche Weise gezählt. Zur Verwendung kommt die Funktion bei der Prüfung von Einträgen, für die eine bestimmte Länge vorgesehen ist, z. B. Postleitzahlen.
LINKS()
Syntax: LINKS(Text;Anzahl_Zeichen)
Beispiel: LINKS("Version;3")
Ergebnis: Ver
Die Funktion liefert als Ergebnis die eingetragene Anzahl_Zeichen vom Beginn der Zeichenfolge an, der Rest wird abgeschnitten.
Dies ist eine einfache Möglichkeit, Zeichenfolgen zu kürzen, etwa um Kurzbezeichnungen zu produzieren.
Wird für Anzahl_Zeichen kein Wert angegeben, so wird 1 vorgegeben.
RECHTS()
Syntax: RECHTS(Text;Anzahl_Zeichen)
Beispiel: RECHTS("Artikelnummer 23456";5)
Ergebnis: 23456
Liefert die angegebene Anzahl_Zeichen vom rechten Ende der Zeichenfolge und gibt diese als Ergebnis aus.
SÄUBERN()
Syntax: SÄUBERN(Text)
Die Funktion entfernt aus Text alle nicht druckbaren Zeichen. In der Regel sind dies Steuerzeichen, die mit Texten aus anderen Programmen übernommen wurden und die nicht ausgedruckt werden sollen.
SUCHEN()
Syntax: SUCHEN(Suchtext;Text;Erstes_Zeichen)
Beispiel: SUCHEN(" ";"Artikel 3245")
Ergebnis: 8
Die Funktion liefert die Position des Zeichens oder der Zeichenfolge (Suchtext), die in einem Text gesucht wird. Die Suche startet bei der Position Erstes_Zeichen, wenn nichts angegeben wird bei der Position 1.
Im Gegensatz zu FINDEN ignoriert diese Funktion die Groß- und Kleinschreibung.
T()
Syntax: T(Wert)
Beispiel: T("Text")
Ergebnis: Text
Die Funktion überprüft, ob sich in einer Zelle eine Zahl oder eine Zeichenfolge befindet. Wird eine Zahl gefunden, dann gibt die Funktion Leertext aus, wird Text gefunden, wird dieser wieder ausgegeben.
TEIL()
Syntax: TEIL(Text;Erstes_Zeichen;Anzahl_Zeichen)
Beispiel: TEIL("Artikel-Nr.";9;3)
Ergebnis: Nr.
Die Funktion ermittelt aus einer Zeichenkette (Text) eine Unterkette ab einer festgelegten Position (Erstes_Zeichen) und gibt sie in der gewünschten Länge (Anzahl_Zeichen) aus.
TEXT()
Syntax: TEXT(Wert;Textformat)
Beispiel: TEXT("34594";"TT.MM.JJJJ")
Ergebnis: 17.09.1994
Die Funktion wandelt einen numerischen Wert in einen Text um und verwendet dabei ein Excel-Zahlenformat (einschließlich Datumsformaten) aus dem Menü Format.
VERKETTEN()
Syntax: VERKETTEN(Text1;Text2;...)
Beispiel: VERKETTEN("Eigen";"anteil")
Ergebnis: Eigenanteil
Text1, Text2 etc. (bis zu 29 Zeichenfolgen) können mittels dieser Funktion miteinander verknüpft werden. Die Funktion erfüllt somit die gleichen Aufgaben wie der Operator »&«.
WECHSELN()
Syntax: WECHSELN(Text;Alter_Text;Neuer_Text;Häufigkeit)
Beispiel: WECHSELN("Aufschwung 1";"1";"2")
Ergebnis: Aufschwung 2
Die Funktion sucht in einem Text nach einer Zeichenkette (Alter_Text), um diese Zeichenkette dann durch eine andere (Neuer_Text) zu ersetzen.
Das optionale Argument Häufigkeit bestimmt, wie oft der Vorgang des Ersetzens ablaufen soll. Wird das Argument mit 1 gesetzt, dann wird nur die erste Fundstelle geändert; wird das Argument nicht belegt, dann alle Fundstellen.
WERT()
Syntax: WERT(Text)
Beispiel: WERT("19.09.1994")
Ergebnis: 34596
Die Funktion wandelt einen Text in einen Wert um und gibt als Ergebnis dann die entsprechende Zahl aus. Der Analysetext darf dabei die Zeichen aus einem Excel-Zahlenformat enthalten. Zeichenketten, die als Datums- oder Zeitformate interpretiert werden können, werden als die jeweilige serielle Zahl ausgegeben. Lässt sich der Text nicht als Zahl interpretieren, gibt die Funktion #WERT aus.
WIEDERHOLEN()
Syntax: WIEDERHOLEN(Text;Multiplikator)
Beispiel: WIEDERHOLEN("=";13)
Ergebnis: =============
Die Funktion trägt die angegebene Zeichenfolge so oft hintereinander in die Zelle ein, wie durch den Multiplikator angegeben ist. Die Zeichenfolge kann aus mehr als einem Zeichen bestehen.
ZEICHEN()
Syntax: ZEICHEN(Zahl)
Beispiel: ZEICHEN(33)
Ergebnis: !
Die Funktion ist die Umkehrung der CODE-Funktion. Sie liefert für eine bestimmte Codezahl das entsprechende Zeichen.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.