Ovaj će vodič pokazati kako koristiti funkciju InStrRev VBA za pronalaženje teksta s desne strane …
InStrRev funkcija
VBA InStrRev funkcija traži položaj podniza unutar niza. Vraća brojanje pozicija slijeva nadesno, ali izvodi pretraživanje od kraja niza do početka.
VBA InStrRev Pronađi podniz
VBA InStrRev funkcija može se koristiti za pronalaženje položaja podniza unutar niza.
12345678 | Sub InStrRevExample_1 ()MsgBox InStrRev ("ABCABC", "C") 'Rezultat je: 6MsgBox InStrRev ("ABCABC", "BC") 'Rezultat je: 5MsgBox InStrRev ("La La Land", "L") 'Rezultat je: 7MsgBox InStrRev ("La La Land", "La") 'Rezultat je: 7MsgBox InStrRev ("La La Land", "La") 'Rezultat je: 4MsgBox InStrRev ("La La Land", "M") 'Rezultat je: 0Kraj podm |
VBA InStrRev početna pozicija
VBA InStrRev funkcija može započeti potragu za podnizom s dodijeljenog mjesta računanog slijeva nadesno.
12345678 | Sub InStrRevExample_2 ()MsgBox InStrRev ("La La Land", "L") 'Rezultat je: 7MsgBox InStrRev ("La La Land", "L", 8) 'Rezultat je: 7MsgBox InStrRev ("La La Land", "L", 7) 'Rezultat je: 7MsgBox InStrRev ("La La Land", "L", 6) 'Rezultat je: 4MsgBox InStrRev ("La La Land", "L", 4) 'Rezultat je: 4MsgBox InStrRev ("La La Land", "L", 3) 'Rezultat je: 1Kraj podm |
VBA programiranje | Generator koda radi za vas!
VBA InStrRev osjetljivost na velika i mala slova
VBA InStrRev funkcija prema zadanim postavkama razlikuje velika i mala slova. To ponašanje možete promijeniti u razlikovanje velikih i malih slova pomoću izbornog parametra. U tom slučaju morate definirati i početnu poziciju pretraživanja.
123456789 | Sub InStrRevExample_3 ()'InstrRev prema zadanim postavkama razlikuje velika i mala slovaMsgBox InStrRev ("La La Land", "L") 'Rezultat je: 7MsgBox InStrRev ("La La Land", "l") 'Rezultat je: 0'InstrRev može izvesti velika i mala slovaMsgBox InStrRev ("La La Land", "L", -1, vbTextCompare) 'Rezultat je: 7MsgBox InStrRev ("La La Land", "l", -1, vbTextCompare) 'Rezultat je: 7Kraj podm |
VBA InStrRev Zadnji prostor
VBA InStrRev funkcija može pronaći položaj posljednjeg prostora u nizu.
123456789 | Sub InStrRevExample_4 ()MsgBox InStrRev ("La La Land", "")'Rezultat je: 6MsgBox InStrRev ("Leonardo da Vinci", "")'Rezultat je: 12MsgBox InStrRev ("Neka sila bude s vama", "")'Rezultat je: 22Kraj podm |
VBA InStrRev Predzadnji prostor
VBA InStrRev funkcija može pronaći položaj pretposljednjeg razmaka u nizu. Možemo upotrijebiti funkciju VBA InStrRev za pronalaženje posljednjeg prostora u nizu, a zatim možemo ponovno koristiti InStrRev s novom početnom točkom za pronalaženje položaja pretposljednjeg razmaka
12345678910111213 | Sub InStrRevExample_5 ()Zatamni LastPos kao cijeli brojLastPos = InStrRev ("Neka sila bude s vama", "")MsgBox LastPos rezultat je: 22Zatamni SecondLastPos kao cijeli brojSecondLastPos = InStrRev ("Neka sila bude s vama", "", LastPos - 1)MsgBox SecondLastPos rezultat je: 17'InStrRev je započeo potragu za prostorom neposredno prije posljednjeg prostora'Naći će pretposljednji prostor jer pretražuje zdesna nalijevoKraj podm |
Umorni ste od traženja primjera VBA koda? Isprobajte AutoMacro!
VBA InStrRev Povratni naziv datoteke
VBA InStrRev funkcija može se koristiti za jednostavno vraćanje naziva datoteke iz niza koji sadrži put i naziv datoteke. Koristit ćemo funkciju InStrRev s funkcijama VBA Len i VBA Desno.
VBA Len funkcija vraća duljinu niza:
1 | MsgBox Len ("XBCX") 'Rezultat je: 4 |
Funkcija VBA Right vraća n znakova s kraja niza:
1 | MsgBox Desno ("ABCDE", 2) 'Rezultat je: DE |
Možemo upotrijebiti funkciju InStrRev za pronalaženje posljednjeg pojavljivanja "\" u imenu putanje i koristiti funkciju Len za izračun duljine naziva datoteke. Desno tada može izdvojiti naziv datoteke.
12345678910111213141516171819202122232425262728 | Sub InStrRevExample_4 ()Priguši PathEx kao nizPathEx = "C: \ MyFiles \ Other \ UsefulFile.pdf"Dim FilenameEx As StringFilenameEx = Desno (PathEx, Len (PathEx) - InStrRev (PathEx, "\"))MsgBox FilenameEx 'Rezultat je: UsefulFile.pdf'Hajde da razbijemo ovaj kôdMsgBox Len (PathEx)'Ovo je duljina naziva staze (31)MsgBox InStrRev (PathEx, "\")'Ovo je položaj posljednjeg \ u nizuMsgBox Len (PathEx) - InStrRev (PathEx, "\")'Ovo je duljina naziva datoteke (14)'Razlika između pune duljine i položaja posljednjeg \ u nizu'(31-27 = 14)'Sada znamo duljinu naziva datoteke i naravno da je na kraju'Prava funkcija idealna je za ovu situacijuFilenameEx = Desno (PathEx, Len (PathEx) - InStrRev (PathEx, "\"))Kraj podm |