In diesem Tutorial wird gezeigt, wie Sie mit der rechten VBA-Funktion Text von rechts extrahieren.
Rechte Funktion
VBA Rechte Funktion Letzte n Zeichen
Die VBA Right-Funktion gibt die letzten n Zeichen einer Zeichenfolge zurück:
123456 | Unter rechtsBeispiel_1()MsgBox Right("ABCDEFGHI", 4) 'Ergebnis ist: "FGHI"MsgBox Right("ABCDEFGHI", 2) 'Ergebnis ist: "HI"MsgBox Right("ABCDEFGHI", 1) 'Ergebnis ist: "I"MsgBox Right("ABCDEFGHI", 100) 'Ergebnis ist: "ABCDEFGHI"End Sub |
VBA Right Function Letzte n Zeichen in einer Variablen
Wie oben gezeigt, können Sie eine Zeichenfolge einfach durch Eingabe von Text in Anführungszeichen definieren. Aber die RIGHT-Funktion funktioniert auch mit String-Variablen. In diesen Beispielen werden die letzten n Zeichen aus einer String-Variablen extrahiert.
123456789 | Unter rechtsExample_2()Dim StrEx As String 'String-Variable definierenStrEx = "ABCDEFGHI"MsgBox Right(StrEx, 4) 'Ergebnis ist: "FGHI"MsgBox Right(StrEx, 2) 'Ergebnis ist: "HI"MsgBox Right(StrEx, 1) 'Ergebnis ist: "I"MsgBox Right(StrEx, 100) 'Ergebnis ist: "ABCDEFGHI"End Sub |
VBA-Programmierung | Code Generator arbeitet für Sie!
VBA Right Function Letzte n Zeichen aus einer Zelle
Strings können in VBA-Code definiert werden, aber Sie können auch Werte aus Zellen verwenden. Lesen Sie den Wert einer Zelle, halten Sie ihn in einer String-Variablen und extrahieren Sie die letzten n Zeichen aus diesem Arbeitsblattzellenwert.
123456789101112 | Unter rechtsExample_3()Dim StrEx As String 'String-Variable definieren'Lesen Sie den Wert von Zelle A1 im Arbeitsblatt Sheet1StrEx = ThisWorkbook.Worksheets("Sheet1").Range("A1").Value'Für dieses Beispiel ist der Wert von Zelle A1 "ABCDEFG hI"MsgBox Right(StrEx, 4) 'Ergebnis ist: "G hI"MsgBox Right(StrEx, 2) 'Ergebnis ist: "hI"MsgBox Right(StrEx, 1) 'Ergebnis ist: "I"MsgBox Right(StrEx, 100) 'Ergebnis ist: "ABCDEFG hI"End Sub |
VBA Rechte Funktion Abschneiden des ersten Buchstabens
Um Buchstaben vom Anfang einer Zeichenfolge zu entfernen, verwenden Sie die RIGHT-Funktion zusammen mit der LEN-Funktion.
Die VBA-LEN-Funktion zählt die Anzahl der Zeichen in einer Zeichenfolge:
1 | Len(StrEx) |
Durch Kombinieren der Funktionen können wir eine bestimmte Anzahl von Zeichen am Anfang des Strings entfernen:
12345678 | Unter rechtsExample_4()Dim StrEx As String 'String-Variable definierenStrEx = "ABCDEF"MsgBox Right(StrEx, Len(StrEx)) 'Ergebnis ist: "ABCDEF"MsgBox Right(StrEx, Len(StrEx) - 1) 'Ergebnis ist: "BCDEF"MsgBox Right(StrEx, Len(StrEx) - 2) 'Ergebnis ist: "CDEF"End Sub |
VBA-Recht zum Extrahieren von Text nach Leerzeichen
Um den Nachnamen aus einer Zeichenfolge mit einem vollständigen Namen zu extrahieren, verwenden Sie die Right-Funktion zusammen mit der Len- und Instr-Funktion.
Die VBA-LEN-Funktion zählt die Anzahl der Zeichen in einer Zeichenfolge:
1 | Linse(StrEx) |
Die VBA InStr-Funktion sucht nach einer Teilzeichenfolge innerhalb einer Zeichenfolge und gibt die Positionsnummer der Teilzeichenfolge zurück.
1 | InStr(StrEx, "") |
Durch Kombinieren der Funktionen können wir den Teil nach dem ersten Leerzeichen aus einer Phrase extrahieren:
123456789101112131415 | Unter rechtsExample_5()Dim StrEx As String 'String-Variable definierenStrEx = "Luke Skywalker"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, ""))'Ergebnis ist: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, ""))'Ergebnis ist: "da Vinci"StrEx = "Möge die Macht mit dir sein"MsgBox Right(StrEx, Len(StrEx) - InStr(StrEx, ""))"Ergebnis ist: "Die Macht sei mit dir"End Sub |
Sind Sie es leid, nach VBA-Codebeispielen zu suchen? Probieren Sie AutoMacro aus!
VBA-Recht, das letzte Wort zu extrahieren
Um das letzte Wort aus einer Zeichenfolge mit einer Phrase zu extrahieren, verwenden Sie die Right-Funktion zusammen mit der Len- und InstrRev-Funktion.
Wie wir oben gesehen haben, zählt die VBA LEN-Funktion die Anzahl der Zeichen in einer Zeichenfolge:
1 | Linse(StrEx) |
Die VBA InStrRev-Funktion sucht nach einer Teilzeichenfolge innerhalb einer Zeichenfolge und gibt die Positionsnummer der Teilzeichenfolge zurück. Es startet die Suche am Ende der Phrase (von rechts nach links), gibt aber die Position vom Anfang der Zeichenfolge (von links nach rechts) zurück.
1 | InStrRev(StrEx, "") |
Durch Kombinieren der Funktionen können wir den Teil nach dem letzten Leerzeichen aus einer Phrase extrahieren:
123456789101112131415 | Unter rechtsExample_6()Dim StrEx As String 'String-Variable definierenStrEx = "Luke Skywalker"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, ""))'Ergebnis ist: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, ""))'Ergebnis ist: "da Vinci"StrEx = "Möge die Macht mit dir sein"MsgBox Right(StrEx, Len(StrEx) - InStrRev(StrEx, ""))'Ergebnis ist: "du"End Sub |