Ta vadnica bo pokazala, kako s funkcijo Right VBA izvleči besedilo z desne.
Desna funkcija
VBA Desna funkcija Zadnjih n znakov
Funkcija VBA Right vrne zadnjih n znakov iz niza:
123456 | PodpravicaPrimer_1 ()MsgBox desno ("ABCDEFGHI", 4) "Rezultat je:" FGHI "MsgBox desno ("ABCDEFGHI", 2) "Rezultat je:" HI "MsgBox desno ("ABCDEFGHI", 1) "Rezultat je:" I "MsgBox desno ("ABCDEFGHI", 100) "Rezultat je:" ABCDEFGHI "End Sub |
Desna funkcija VBA Zadnjih n znakov v spremenljivki
Kot je prikazano zgoraj, lahko niz preprosto definirate tako, da vnesete besedilo, obdano z narekovaji. Toda funkcija RIGHT bo delovala tudi s spremenljivkami niza. Ti primeri bodo izvlekli zadnjih n znakov iz spremenljivke niza.
123456789 | PodpravicaPrimer_2 ()Dim StrEx As String 'Določite spremenljivko nizaStrEx = "ABCDEFGHI"MsgBox desno (StrEx, 4) 'Rezultat je: "FGHI"MsgBox desno (StrEx, 2) 'Rezultat je: "HI"MsgBox desno (StrEx, 1) 'Rezultat je: "I"MsgBox desno (StrEx, 100) 'Rezultat je: "ABCDEFGHI"End Sub |
Programiranje VBA | Generator kod deluje za vas!
Desna funkcija VBA Zadnjih n znakov iz celice
Niz je mogoče definirati v kodi VBA, lahko pa uporabite tudi vrednosti iz celic. Preberite vrednost celice, jo hranite v spremenljivki niza in izvlecite zadnjih n znakov iz te vrednosti celice delovnega lista.
123456789101112 | PodpravicaPrimer_3 ()Dim StrEx As String 'Določite spremenljivko niza'Preberite vrednost celice A1 na listu delovnega lista1StrEx = ThisWorkbook.Worksheets ("Sheet1"). Range ("A1"). Value"V tem primeru je vrednost celice A1" ABCDEFG hI "MsgBox desno (StrEx, 4) 'Rezultat je: "G hI"MsgBox desno (StrEx, 2) 'Rezultat je: "hI"MsgBox desno (StrEx, 1) 'Rezultat je: "I"MsgBox desno (StrEx, 100) 'Rezultat je: "ABCDEFG hI"End Sub |
VBA desna funkcija Odreži prvo črko
Če želite odstraniti črke z začetka niza, uporabite funkcijo DESNO skupaj s funkcijo LEN.
Funkcija VBA LEN šteje število znakov v nizu:
1 | Len (StrEx) |
S kombinacijo funkcij lahko odstranimo določeno število znakov z začetka niza:
12345678 | Pod desnaPrimer_4 ()Dim StrEx As String 'Določite spremenljivko nizaStrEx = "ABCDEF"MsgBox desno (StrEx, Len (StrEx)) 'Rezultat je: "ABCDEF"MsgBox desno (StrEx, Len (StrEx) - 1) 'Rezultat je: "BCDEF"MsgBox desno (StrEx, Len (StrEx) - 2) 'Rezultat je: "CDEF"End Sub |
VBA Pravica do izvlečenja besedila po presledku
Če želite izvleči priimek iz niza s polnim imenom, uporabite funkcijo Right skupaj s funkcijo Len in Instr.
Funkcija VBA LEN šteje število znakov v nizu:
1 | Len (StrEx) |
Funkcija VBA InStr išče podniz v nizu in vrne številko položaja podniz.
1 | InStr (StrEx, "") |
S kombinacijo funkcij lahko del po prvem presledku izvlečemo iz fraze:
123456789101112131415 | PodpravicaPrimer_5 ()Dim StrEx As String 'Določite spremenljivko nizaStrEx = "Luke Skywalker"MsgBox desno (StrEx, Len (StrEx) - InStr (StrEx, ""))"Rezultat je:" Skywalker "StrEx = "Leonardo da Vinci"MsgBox desno (StrEx, Len (StrEx) - InStr (StrEx, ""))"Rezultat je:" da Vinci "StrEx = "Naj bo sila z vami"MsgBox desno (StrEx, Len (StrEx) - InStr (StrEx, ""))"Rezultat je:" Sila naj bo z vami "End Sub |
Utrujen od iskanja primerov kode VBA? Preizkusite AutoMacro!
Pravica VBA do izvleka zadnje besede
Če želite izvleči zadnjo besedo iz niza s frazo, uporabite funkcijo Right skupaj s funkcijo Len in InstrRev.
Kot smo videli zgoraj, funkcija VBA LEN šteje število znakov v nizu:
1 | Len (StrEx) |
Funkcija VBA InStrRev išče podniz v nizu in vrne številko položaja podniz. Iskanje se začne na koncu stavka (od desne proti levi), vrne pa položaj od začetka niza (od leve proti desni).
1 | InStrRev (StrEx, "") |
S kombinacijo funkcij lahko del po zadnjem presledku izvlečemo iz fraze:
123456789101112131415 | Pod desnaPrimer_6 ()Dim StrEx As String 'Določite spremenljivko nizaStrEx = "Luke Skywalker"MsgBox desno (StrEx, Len (StrEx) - InStrRev (StrEx, ""))"Rezultat je:" Skywalker "StrEx = "Leonardo da Vinci"MsgBox desno (StrEx, Len (StrEx) - InStrRev (StrEx, ""))"Rezultat je:" da Vinci "StrEx = "Naj bo sila z vami"MsgBox desno (StrEx, Len (StrEx) - InStrRev (StrEx, ""))"Rezultat je:" ti "End Sub |