Denne opplæringen vil demonstrere hvordan du bruker Høyre VBA -funksjonen til å trekke ut tekst fra høyre.
Høyre funksjon
VBA Høyre funksjon Siste n tegn
VBA Høyre -funksjonen returnerer de siste n -tegnene fra en streng:
123456 | Sub RightExample_1 ()MsgBox Høyre ("ABCDEFGHI", 4) 'Resultat er: "FGHI"MsgBox Høyre ("ABCDEFGHI", 2) 'Resultat er: "HI"MsgBox Høyre ("ABCDEFGHI", 1) 'Resultat er: "I"MsgBox Høyre ("ABCDEFGHI", 100) 'Resultat er: "ABCDEFGHI"Slutt Sub |
VBA Høyre funksjon Siste n tegn i en variabel
Som vist ovenfor kan du definere en streng ved å skrive inn tekst omgitt av anførselstegn. Men RIGHT -funksjonen vil også fungere med strengvariabler. Disse eksemplene trekker ut de siste n -tegnene fra en strengvariabel.
123456789 | Sub RightExample_2 ()Dim StrEx As String 'Definer en strengvariabelStrEx = "ABCDEFGHI"MsgBox Høyre (StrEx, 4) 'Resultat er: "FGHI"MsgBox Høyre (StrEx, 2) 'Resultat er: "HI"MsgBox Høyre (StrEx, 1) 'Resultat er: "I"MsgBox Høyre (StrEx, 100) 'Resultat er: "ABCDEFGHI"Slutt Sub |
VBA -programmering | Kodegenerator fungerer for deg!
VBA Høyre funksjon Siste n tegn fra en celle
Strenger kan defineres i VBA -kode, men du kan også bruke verdier fra celler. Les verdien til en celle, behold den i en strengvariabel, og trekk ut de siste n -tegnene fra den regnearkcelleverdien.
123456789101112 | Sub RightExample_3 ()Dim StrEx As String 'Definer en strengvariabel'Les verdien av celle A1 i regnearkark1StrEx = ThisWorkbook.Worksheets ("Sheet1"). Område ("A1"). Verdi'For dette eksemplet er verdien av celle A1 "ABCDEFG hI"MsgBox Høyre (StrEx, 4) 'Resultat er: "G hI"MsgBox Høyre (StrEx, 2) 'Resultat er: "hI"MsgBox Høyre (StrEx, 1) 'Resultat er: "I"MsgBox Høyre (StrEx, 100) 'Resultat er: "ABCDEFG hI"Slutt Sub |
VBA Høyre funksjon Trim av første bokstav
Hvis du vil fjerne bokstaver fra begynnelsen av en streng, bruker du HØYRE -funksjonen sammen med LEN -funksjonen.
VBA LEN -funksjonen teller antall tegn i en streng:
1 | Len (StrEx) |
Ved å kombinere funksjonene kan vi fjerne et visst antall tegn fra starten av strengen:
12345678 | Sub RightExample_4 ()Dim StrEx As String 'Definer en strengvariabelStrEx = "ABCDEF"MsgBox Høyre (StrEx, Len (StrEx)) 'Resultat er: "ABCDEF"MsgBox Høyre (StrEx, Len (StrEx) - 1) 'Resultat er: "BCDEF"MsgBox Høyre (StrEx, Len (StrEx) - 2) 'Resultat er: "CDEF"Slutt Sub |
VBA Rett til å trekke ut tekst etter mellomrom
For å trekke ut etternavnet fra en streng med et fullt navn, bruker du høyre funksjon sammen med Len og Instr -funksjonen.
VBA LEN -funksjonen teller antall tegn i en streng:
1 | Len (StrEx) |
VBA InStr -funksjonen søker etter en delstreng inne i en streng og returnerer posisjonsnummeret til delstrengen.
1 | InStr (StrEx, "") |
Ved å kombinere funksjonene kan vi trekke ut delen etter det første mellomrommet fra en setning:
123456789101112131415 | Sub RightExample_5 ()Dim StrEx As String 'Definer en strengvariabelStrEx = "Luke Skywalker"MsgBox Høyre (StrEx, Len (StrEx) - InStr (StrEx, ""))'Resultatet er: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Høyre (StrEx, Len (StrEx) - InStr (StrEx, ""))'Resultatet er: "da Vinci"StrEx = "Må kraften være med deg"MsgBox Right (StrEx, Len (StrEx) - InStr (StrEx, ""))'Resultatet er: "Kraften være med deg"Slutt Sub |
Lei av å søke etter eksempler på VBA -kode? Prøv AutoMacro!
VBA Rett til å trekke ut siste ord
For å trekke ut det siste ordet fra en streng med en setning, bruk høyre funksjon sammen med Len og InstrRev -funksjonen.
Som vi har sett ovenfor, teller VBA LEN -funksjonen antall tegn i en streng:
1 | Len (StrEx) |
VBA InStrRev -funksjonen søker etter en delstreng inne i en streng og returnerer posisjonsnummeret til delstrengen. Det starter søket fra slutten av setningen (høyre til venstre), men returnerer posisjonen fra starten av strengen (venstre til høyre).
1 | InStrRev (StrEx, "") |
Ved å kombinere funksjonene kan vi trekke ut delen etter det siste mellomrommet fra en setning:
123456789101112131415 | Sub RightExample_6 ()Dim StrEx As String 'Definer en strengvariabelStrEx = "Luke Skywalker"MsgBox Høyre (StrEx, Len (StrEx) - InStrRev (StrEx, ""))'Resultatet er: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Høyre (StrEx, Len (StrEx) - InStrRev (StrEx, ""))'Resultatet er: "da Vinci"StrEx = "Må kraften være med deg"MsgBox Høyre (StrEx, Len (StrEx) - InStrRev (StrEx, ""))'Resultatet er: "du"Slutt Sub |