Inhaltsverzeichnis
In den letzten Artikeln haben wir verschiedene Textfunktionen besprochen, die zur Bearbeitung von Textzeichenfolgen verwendet werden. Heute konzentrieren wir uns auf die Funktion RECHTS, mit der eine bestimmte Anzahl von Zeichen von der rechten Seite einer Zeichenfolge zurückgegeben werden kann. Wie andere Excel-Textfunktionen ist auch RECHTS sehr einfach und überschaubar, hat jedoch einige nicht offensichtliche Verwendungszwecke, die sich als hilfreich erweisen könnten inIhre Arbeit.
Syntax der Excel RIGHT-Funktion
Die Funktion RECHTS in Excel gibt die angegebene Anzahl von Zeichen ab dem Ende einer Textzeichenfolge zurück.
Die Syntax der Funktion RIGHT lautet wie folgt:
RIGHT(text, [num_chars])Wo:
- Text (erforderlich) - die Textzeichenfolge, aus der Sie Zeichen extrahieren möchten.
- Anzahl_Zeichen (optional) - die Anzahl der zu extrahierenden Zeichen, beginnend mit dem Zeichen ganz rechts.
- Wenn num_chars weggelassen wird, wird 1 letztes Zeichen der Zeichenkette zurückgegeben (Standard).
- Wenn num_chars größer ist als die Gesamtzahl der Zeichen in der Zeichenkette, werden alle Zeichen zurückgegeben.
- Wenn num_chars eine negative Zahl ist, gibt eine Rechtsformel den Fehler #VALUE! zurück.
Um zum Beispiel die letzten 3 Zeichen aus der Zeichenfolge in Zelle A2 zu extrahieren, verwenden Sie diese Formel:
=RIGHT(A2, 3)
Das Ergebnis könnte in etwa so aussehen:
Wichtiger Hinweis: Die Excel-Funktion RIGHT gibt immer ein Textfolge Um zu erzwingen, dass eine Right-Formel eine Zahl ausgibt, verwenden Sie sie in Kombination mit der VALUE-Funktion, wie in diesem Beispiel gezeigt.
Verwendung der Funktion RIGHT in Excel - Formelbeispiele
In realen Arbeitsblättern wird die Excel-Funktion RECHTS nur selten allein verwendet, sondern meist zusammen mit anderen Excel-Funktionen als Teil komplexerer Formeln.
Wie erhalte ich eine Teilzeichenkette, die nach einem bestimmten Zeichen kommt?
Wenn Sie eine Teilzeichenkette extrahieren möchten, die auf ein bestimmtes Zeichen folgt, verwenden Sie entweder die Funktion SEARCH oder FIND, um die Position dieses Zeichens zu ermitteln, subtrahieren Sie die Position von der Gesamtlänge der Zeichenkette, die von der Funktion LEN zurückgegeben wird, und ziehen Sie so viele Zeichen von der rechten Seite der ursprünglichen Zeichenkette ab.
RECHT( String , LEN( String ) - SUCHEN( Zeichen , String ))Angenommen, Zelle A2 enthält den Vor- und Nachnamen, getrennt durch ein Leerzeichen, und Sie möchten den Nachnamen in eine andere Zelle ziehen. Nehmen Sie einfach die obige allgemeine Formel und setzen Sie A2 anstelle von String und " " (Leerzeichen) im Rhythmus von Charakter:
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2))
Die Formel ergibt das folgende Ergebnis:
Auf ähnliche Weise können Sie eine Teilzeichenkette erhalten, die auf ein beliebiges anderes Zeichen folgt, z. B. ein Komma, ein Semikolon, einen Bindestrich usw. Um beispielsweise eine Teilzeichenkette zu extrahieren, die auf einen Bindestrich folgt, verwenden Sie diese Formel:
=RIGHT(A2,LEN(A2)-SEARCH("-",A2))
Das Ergebnis sieht in etwa so aus:
So extrahieren Sie eine Teilzeichenkette nach dem letzten Vorkommen des Begrenzungszeichens
Bei komplexen Zeichenketten, die mehrere Vorkommen desselben Begrenzungszeichens enthalten, müssen Sie oft den Text rechts vom letzten Vorkommen des Begrenzungszeichens abrufen. Zum besseren Verständnis sehen Sie sich die folgenden Quelldaten und das gewünschte Ergebnis an:
Wie Sie im obigen Screenshot sehen können, enthält Spalte A eine Liste von Fehlern. Ihr Ziel ist es, die Fehlerbeschreibung zu finden, die nach dem letzten Doppelpunkt in jeder Zeichenkette kommt. Eine zusätzliche Komplikation besteht darin, dass die ursprünglichen Zeichenketten eine unterschiedliche Anzahl von Begrenzungszeichen enthalten können, z. B. enthält A3 drei Doppelpunkte, während A5 nur einen enthält.
Der Schlüssel zur Lösung ist die Bestimmung der Position des letzten Begrenzungszeichens in der Quellzeichenkette (das letzte Vorkommen eines Doppelpunkts in diesem Beispiel). Dazu müssen Sie eine Handvoll verschiedener Funktionen verwenden:
- Ermittelt die Anzahl der Trennzeichen in der ursprünglichen Zeichenkette. Das ist ein einfacher Teil:
- Zunächst berechnen Sie die Gesamtlänge der Zeichenkette mit der Funktion LEN: LEN(A2)
- Zweitens berechnen Sie die Länge der Zeichenkette ohne Begrenzungszeichen, indem Sie die Funktion SUBSTITUTE verwenden, die alle Vorkommen eines Doppelpunkts durch nichts ersetzt: LEN(SUBSTITUTE(A2,":",""))
- Schließlich subtrahieren Sie die Länge der ursprünglichen Zeichenkette ohne Trennzeichen von der Gesamtlänge der Zeichenkette: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))
Um sicherzugehen, dass die Formel richtig funktioniert, können Sie sie in eine separate Zelle eingeben. Das Ergebnis ist dann 2, was der Anzahl der Doppelpunkte in Zelle A2 entspricht.
- Ersetzen Sie das letzte Begrenzungszeichen durch ein eindeutiges Zeichen. Um den Text nach dem letzten Begrenzungszeichen in der Zeichenkette zu extrahieren, müssen wir das letzte Vorkommen des Begrenzungszeichens auf irgendeine Weise "markieren". Ersetzen wir dazu das letzte Vorkommen eines Doppelpunkts durch ein Zeichen, das nirgendwo in der ursprünglichen Zeichenkette vorkommt, zum Beispiel durch ein Pfundzeichen (#).
Wenn Sie mit der Syntax der Excel-Funktion SUBSTITUTE vertraut sind, erinnern Sie sich vielleicht daran, dass sie ein viertes optionales Argument (instance_num) hat, das es ermöglicht, nur ein bestimmtes Vorkommen des angegebenen Zeichens zu ersetzen. Und da wir bereits die Anzahl der Trennzeichen in der Zeichenfolge berechnet haben, geben Sie einfach die obige Funktion im vierten Argument einer anderen SUBSTITUTE-Funktion an:
=SUBSTITUTE(A2,":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))
Wenn Sie diese Formel in eine separate Zelle eingeben, würde sie diese Zeichenfolge zurückgeben: ERROR:432#Verbindungszeitüberschreitung
- Ermitteln Sie die Position des letzten Begrenzungszeichens in der Zeichenfolge. Je nachdem, durch welches Zeichen Sie das letzte Begrenzungszeichen ersetzt haben, verwenden Sie entweder SEARCH (ohne Berücksichtigung der Groß-/Kleinschreibung) oder FIND (unter Berücksichtigung der Groß-/Kleinschreibung), um die Position dieses Zeichens in der Zeichenfolge zu ermitteln. Wir haben den letzten Doppelpunkt durch das #-Zeichen ersetzt, also verwenden wir die folgende Formel, um seine Position zu ermitteln:
=SEARCH("#", SUBSTITUTE(A2,":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))
In diesem Beispiel gibt die Formel 10 zurück, was der Position von # in der ersetzten Zeichenfolge entspricht.
- Da Sie nun die Position des letzten Begrenzungszeichens in einer Zeichenkette kennen, müssen Sie diese Zahl nur noch von der Gesamtlänge der Zeichenkette subtrahieren und die Funktion RECHTS so einstellen, dass sie so viele Zeichen vom Ende der ursprünglichen Zeichenkette zurückgibt:
=RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))
Wie in der nachstehenden Abbildung zu sehen ist, funktioniert die Formel perfekt:
Wenn Sie mit einem großen Datensatz arbeiten, bei dem verschiedene Zellen unterschiedliche Begrenzungszeichen enthalten können, sollten Sie die obige Formel in die Funktion IFERROR einschließen, um mögliche Fehler zu vermeiden:
=IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))), A2)
Enthält eine bestimmte Zeichenkette kein einziges Vorkommen des angegebenen Begrenzungszeichens, wird die ursprüngliche Zeichenkette zurückgegeben, wie in Zeile 6 in der Abbildung unten:
So entfernen Sie die ersten N Zeichen aus einer Zeichenkette
Abgesehen von der Extraktion einer Teilzeichenkette am Ende einer Zeichenfolge ist die Excel-Funktion RECHTS sehr nützlich, wenn Sie eine bestimmte Anzahl von Zeichen vom Anfang der Zeichenfolge entfernen möchten.
In dem Datensatz, der im vorherigen Beispiel verwendet wurde, möchten Sie vielleicht das Wort "ERROR" entfernen, das am Anfang jeder Zeichenkette erscheint, und nur die Fehlernummer und die Beschreibung übrig lassen. Dazu subtrahieren Sie die Anzahl der zu entfernenden Zeichen von der Gesamtlänge der Zeichenkette und geben diese Zahl an den Befehl num_chars Argument der Excel-Funktion RIGHT:
RECHT( String , LEN( String )- Anzahl_der_zu_entfernenden_Zeichen )In diesem Beispiel entfernen wir die ersten 6 Zeichen (5 Buchstaben und einen Doppelpunkt) aus der Textzeichenfolge in A2, so dass unsere Formel wie folgt lautet:
=RIGHT(A2, LEN(A2)-6)
Kann die Excel-Funktion RIGHT eine Zahl zurückgeben?
Wie zu Beginn dieses Tutorials erwähnt, gibt die Funktion RECHTS in Excel immer eine Textzeichenfolge zurück, auch wenn der ursprüngliche Wert eine Zahl ist. Was aber, wenn Sie mit einem numerischen Datensatz arbeiten und die Ausgabe ebenfalls numerisch sein soll? Eine einfache Umgehung besteht darin, eine RECHTS-Formel in die Funktion WERT einzuschachteln, die speziell dafür ausgelegt ist, eine Zeichenfolge, die eine Zahl darstellt, in eine Zahl zu konvertieren.
Um beispielsweise die letzten 5 Zeichen (Postleitzahl) aus der Zeichenfolge in A2 zu ziehen und die extrahierten Zeichen in eine Zahl zu konvertieren, verwenden Sie diese Formel:
=WERT(RECHTS(A2, 5))
Der folgende Screenshot zeigt das Ergebnis - bitte beachten Sie die rechtsbündigen Zahlen in Spalte B, im Gegensatz zu den linksbündigen Textstrings in Spalte A:
Warum funktioniert die Funktion RIGHT nicht mit Datumsangaben?
Da die Excel-Funktion RECHTS für Textzeichenfolgen ausgelegt ist, während Datumsangaben im internen Excel-System durch Zahlen dargestellt werden, kann eine RECHTS-Formel keinen einzelnen Teil eines Datums wie Tag, Monat oder Jahr abrufen. Wenn Sie dies versuchen, erhalten Sie lediglich einige letzte Ziffern der Zahl, die ein Datum darstellt.
Angenommen, Sie haben das Datum 18-Jan-2017 Wenn Sie versuchen, die Jahreszahl mit der Formel RECHTS(A1,4) zu extrahieren, wäre das Ergebnis 2753, d. h. die letzten 4 Ziffern der Zahl 42753, die im Excel-System dem 18. Januar 2017 entspricht.
"Wie kann ich also einen bestimmten Teil eines Datums abrufen?", werden Sie mich fragen. Mit einer der folgenden Funktionen:
- DAY-Funktion zum Extrahieren eines Tages: =DAY(A1)
- Funktion MONTH zur Ermittlung eines Monats: =MONTH(A1)
- YEAR-Funktion zum Abrufen eines Jahres: =YEAR(A1)
Der folgende Screenshot zeigt die Ergebnisse:
Wenn Ihr Daten werden durch Textstrings dargestellt Wenn Sie Daten aus einer externen Quelle exportieren, was häufig der Fall ist, können Sie die Funktion RECHTS verwenden, um die letzten Zeichen der Zeichenkette zu ermitteln, die einen bestimmten Teil des Datums darstellen:
Excel RIGHT-Funktion funktioniert nicht - Gründe und Lösungen
Wenn eine Rechtsformel in Ihrem Arbeitsblatt nicht richtig funktioniert, liegt das höchstwahrscheinlich an einem der folgenden Gründe:
- Es gibt eine oder mehrere nachgestellte Leerzeichen Um überflüssige Leerzeichen in Zellen schnell zu entfernen, verwenden Sie entweder die Excel-Funktion TRIM oder das Add-In Cell Cleaner.
- Die num_chars Argument ist weniger als Null Natürlich werden Sie kaum absichtlich eine negative Zahl in Ihre Formel einsetzen wollen, aber wenn die num_chars Argument von einer anderen Excel-Funktion oder einer Kombination verschiedener Funktionen berechnet wird und Ihre Right-Formel den Fehler #VALUE! zurückgibt, sollten Sie die verschachtelte(n) Funktion(en) auf Fehler überprüfen.
- Der ursprüngliche Wert ist ein Datum Wenn Sie dieses Lernprogramm aufmerksam verfolgt haben, wissen Sie bereits, warum die Funktion RECHTS nicht mit Datumsangaben arbeiten kann. Falls jemand den vorherigen Abschnitt übersprungen hat, finden Sie alle Einzelheiten unter Warum die Funktion RECHTS in Excel nicht mit Datumsangaben arbeitet.
So verwenden Sie die Funktion RECHTS in Excel. Wenn Sie sich die in diesem Tutorial besprochenen Formeln genauer ansehen möchten, können Sie gerne unsere Beispiel-Arbeitsmappe herunterladen. Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog begrüßen zu dürfen.
Verfügbare Downloads
Excel RIGHT-Funktion - Beispiele (.xlsx-Datei)