Tämä opetusohjelma osoittaa, miten oikeaa VBA -toimintoa käytetään tekstin poimimiseen oikealta.
Oikea toiminto
VBA Oikea toiminto Viimeinen n merkkiä
VBA Right -toiminto palauttaa merkkijonon viimeiset n merkkiä:
123456 | AlaoikeaEsimerkki_1 ()MsgBox Right ("ABCDEFGHI", 4) Tulos: "FGHI"MsgBox Right ("ABCDEFGHI", 2) 'Tulos: "HI"MsgBox Right ("ABCDEFGHI", 1) 'Tulos: "I"MsgBox Right ("ABCDEFGHI", 100) 'Tulos: "ABCDEFGHI"End Sub |
VBA Oikea funktio Muuttujan viimeiset n merkkiä
Kuten yllä on esitetty, voit määrittää merkkijonon yksinkertaisesti kirjoittamalla lainausmerkkien ympäröimän tekstin. Mutta OIKEA -funktio toimii myös merkkijonomuuttujien kanssa. Nämä esimerkit poimivat merkkijonomuuttujasta viimeiset n merkkiä.
123456789 | AlaoikeaEsimerkki_2 ()Dim StrEx merkkijonona 'Määritä merkkijonomuuttujaStrEx = "ABCDEFGHI"MsgBox Right (StrEx, 4) 'Tulos: "FGHI"MsgBox Right (StrEx, 2) 'Tulos: "HI"MsgBox Right (StrEx, 1) 'Tulos: "I"MsgBox Right (StrEx, 100) Tulos: "ABCDEFGHI"End Sub |
VBA -ohjelmointi | Koodigeneraattori toimii sinulle!
VBA Oikea toiminto Viimeiset n solun merkkiä
Merkkijonot voidaan määrittää VBA -koodissa, mutta voit myös käyttää solujen arvoja. Lue solun arvo, säilytä se merkkijonomuuttujassa ja poimi viimeiset n merkkiä laskentataulukon solun arvosta.
123456789101112 | AlaoikeaEsimerkki_3 ()Dim StrEx merkkijonona 'Määritä merkkijonomuuttuja'Lue solun A1 arvo laskentataulukon taulukosta 1StrEx = ThisWorkbook.Worksheets ("Sheet1"). Alue ("A1"). Arvo'Tässä esimerkissä solun A1 arvo on "ABCDEFG hI"MsgBox Right (StrEx, 4) 'Tulos: "G hI"MsgBox Oikea (StrEx, 2) 'Tulos: "hI"MsgBox Right (StrEx, 1) 'Tulos: "I"MsgBox Right (StrEx, 100) Tulos: "ABCDEFG hI"End Sub |
VBA -oikeanpuoleinen toiminto Leikkaa ensimmäinen kirjain pois
Voit poistaa kirjaimia merkkijonon alusta käyttämällä OIKEA -funktiota ja LEN -toimintoa.
VBA LEN -toiminto laskee merkkijonon merkkien määrän:
1 | Len (StrEx) |
Yhdistämällä toiminnot voimme poistaa tietyn määrän merkkejä merkkijonon alusta:
12345678 | AlaoikeaEsimerkki_4 ()Dim StrEx merkkijonona 'Määritä merkkijonomuuttujaStrEx = "ABCDEF"MsgBox Right (StrEx, Len (StrEx)) 'Tulos: "ABCDEF"MsgBox Oikea (StrEx, Len (StrEx) - 1) 'Tulos: "BCDEF"MsgBox Oikea (StrEx, Len (StrEx) - 2) 'Tulos: "CDEF"End Sub |
VBA Oikeus poimia tekstiä välilyönnin jälkeen
Jos haluat poimia sukunimen koko nimen merkkijonosta, käytä oikeaa funktiota yhdessä Len- ja Instr -funktion kanssa.
VBA LEN -toiminto laskee merkkijonon merkkien määrän:
1 | Len (StrEx) |
VBA InStr -toiminto etsii merkkijonosta alimerkkijonoa ja palauttaa alimerkkijonon sijaintinumeron.
1 | InStr (StrEx, "") |
Yhdistämällä toiminnot voimme poimia ensimmäisen lauseen jälkeen olevan osan lauseesta:
123456789101112131415 | AlaoikeaEsimerkki_5 ()Dim StrEx merkkijonona 'Määritä merkkijonomuuttujaStrEx = "Luke Skywalker"MsgBox Oikea (StrEx, Len (StrEx) - InStr (StrEx, ""))Tulos: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Oikea (StrEx, Len (StrEx) - InStr (StrEx, ""))"Tulos on:" da Vinci "StrEx = "Olkoon Voima kanssasi"MsgBox Oikea (StrEx, Len (StrEx) - InStr (StrEx, ""))Tulos on: "Voima olkoon kanssasi"End Sub |
Oletko kyllästynyt etsimään esimerkkejä VBA -koodista? Kokeile AutoMacroa!
VBA Oikeus purkaa viimeinen sana
Jos haluat poimia viimeisen sanan lauseesta, käytä oikeaa funktiota yhdessä Len- ja InstrRev -funktion kanssa.
Kuten edellä on nähty, VBA LEN -toiminto laskee merkkijonon merkkien määrän:
1 | Len (StrEx) |
VBA InStrRev -toiminto etsii merkkijonosta alimerkkijonoa ja palauttaa alimerkkijonon sijainnin numeron. Se aloittaa haun lauseen lopusta (oikealta vasemmalle), mutta palauttaa sijainnin merkkijonon alusta (vasemmalta oikealle).
1 | InStrRev (StrEx, "") |
Yhdistämällä toiminnot voimme poimia lauseesta viimeisen välilyönnin jälkeisen osan:
123456789101112131415 | AlaoikeaEsimerkki_6 ()Dim StrEx merkkijonona 'Määritä merkkijonomuuttujaStrEx = "Luke Skywalker"MsgBox Oikea (StrEx, Len (StrEx) - InStrRev (StrEx, ""))Tulos: "Skywalker"StrEx = "Leonardo da Vinci"MsgBox Oikea (StrEx, Len (StrEx) - InStrRev (StrEx, ""))Tulos: "da Vinci"StrEx = "Olkoon Voima kanssasi"MsgBox Oikea (StrEx, Len (StrEx) - InStrRev (StrEx, ""))"Tulos on:" sinä "End Sub |