VBA-oikea toiminto (esimerkkejä) Vaiheittainen opas Excel VBA Right -sovellukseen

Oikea toiminto VBA Excelissä

Oikea toiminto on sama kuin molemmissa laskentataulukko-funktioissa ja VBA: ssa, tämän funktion käyttö on se, että se antaa meille alamerkkijonon tietystä merkkijonosta, mutta haku tehdään merkkijonosta oikealta vasemmalle, tämä on eräänlainen merkkijonofunktio VBA: ssa käytetään application.worksheet-toimintomenetelmän kanssa.

OIKEA Toiminto Excel VBA: ssa, jota käytetään merkkien purkamiseen toimitettujen tekstiarvojen oikealta puolelta. Excelissä meillä on monia tekstitoimintoja tekstipohjaisen datan käsittelemiseksi. Joitakin hyödyllisiä toimintoja ovat LEN, VASEN, OIKEA, MID-toiminto merkkien poimimiseksi tekstiarvoista. Yleinen esimerkki näiden toimintojen käytöstä on etu- ja sukunimen purkaminen erikseen koko nimestä.

OIKEA kaava on myös siellä laskentataulukossa. VBA: ssa meidän on luotettava laskentataulukon toimintoluokkaan päästäksesi VBA OIKEA-toimintoon, pikemminkin meillä on sisäänrakennettu OIKEA-toiminto myös VBA: ssa.

Katsokaa nyt VBA RIGHT -kaavan alla olevaa syntaksia.

  • Merkkijono: Tämä on arvomme ja tästä arvosta yritämme poimia merkit merkkijonon oikealta puolelta.
  • Pituus: Mukana toimitetusta merkkijonosta kuinka monta merkkiä tarvitsemme. Jos tarvitsemme neljä merkkiä oikealta puolelta, voimme antaa argumentin 4.

Esimerkiksi, jos merkkijono on "Matkapuhelin" ja jos haluamme purkaa vain sanan "Puhelin", voimme toimittaa argumentin kuten alla.

OIKEA ("Matkapuhelin", 5)

Syy miksi mainitsin 5, koska sana "Puhelin" sisältää 5 kirjainta. Artikkelin seuraavassa osassa näemme, kuinka voimme käyttää sitä VBA: ssa.

Esimerkkejä Excel VBA -oikeustoiminnosta

Seuraavassa on esimerkkejä oikean toiminnon VBA Excelistä.

Voit ladata tämän VBA Right Function Excel -mallin täältä - VBA Right Function Excel -malli

Esimerkki 1

Esitän sinulle yksinkertaisen esimerkin menettelyn aloittamiseksi. Oletetaan, että sinulla on merkkijono "New York" ja jos haluat poimia 3 merkkiä oikealta, kirjoita koodi alla olevien ohjeiden mukaan.

Vaihe 1: Ilmoita muuttuja VBA-merkkijonoksi.

Koodi:

 Oikea_esimerkki_esimerkki1 () Himmennä merkkijonon loppuosa 

Vaihe 2: Nyt määritämme tälle muuttujalle arvon soveltamalla OIKEA-toimintoa.

Koodi:

 Sub Right_Example1 () Dim k As String k = Right (End Sub 

Vaihe 3: Ensimmäinen  argumentti on merkkijono ja tämän esimerkin merkkijono on "New York".

Koodi:

 Sub Right_Example1 () Dim k As String k = Right ("New York", End Sub 

Vaihe 4: Seuraavaksi on kuinka monta merkkiä tarvitsemme toimitetusta merkkijonosta. Tässä esimerkissä tarvitsemme 3 merkkiä.

Koodi:

 Sub Right_Example1 () Dim k As String k = Right ("New York", 3) Sub Sub 

Vaihe 5: Meillä on kaksi argumenttia käsiteltäväksi, joten olemme valmis. Määritä nyt tämän muuttujan arvo VBA: n viestiruutuun.

Koodi:

 Oikea_esimerkki1 () Dim k As String k = Oikea ("New York", 3) MsgBox k End Sub 

Suorita koodi F5-näppäimellä tai manuaalisesti ja katso tulos viestiruudussa.

Sanassa "New York" oikealla puolella 3 merkkiä ovat "ork".

Nyt vaihdan pituuden 3: sta 4: een saadaksesi täyden arvon.

Koodi:

 Sub Right_Example1 () Dim k As String k = Right ("New York", 4) MsgBox k End Sub 

Suorita tämä koodi manuaalisesti tai käyttämällä F5-näppäintä, niin saamme “York”.

Esimerkki 2

Katso nyt vielä yksi esimerkki, tällä kertaa merkkijonoarvo on “Michael Clarke”.

Jos ilmoitat pituuden 6, tulokseksi saadaan “Clarke”.

Koodi:

 Sub Right_Example1 () Dim k As String k = Right ("Michael Clarke", 6) MsgBox k End Sub 

Suorita tämä koodi F5-näppäimellä tai manuaalisesti nähdäksesi tuloksen.

Dynaaminen oikea toiminto Excel VBA: ssa

Jos noudatat kahta edellistä esimerkkiä, olemme toimittaneet pituusargumentin numerot manuaalisesti. Mutta tämä ei ole oikea prosessi työn tekemiseen.

Jokaisessa merkkijonossa oikeanpuoleiset merkit ovat erilaiset kussakin tapauksessa. Emme voi viitata merkkien pituuteen manuaalisesti kullekin arvolle eri tavalla. Tällöin toisella merkkijonofunktiolla “Instr” on tärkeä rooli.

Instr- funktio palauttaa toimitetun merkin sijainnin toimitetussa merkkijonossa. Esimerkiksi instr (1,”Bangalore”,”a”) palauttaa aseman kirjain ’a’ merkkijono ’Bangalore’ alkaen ensimmäisestä (1) luonnetta.

Tässä tapauksessa tulos on 2, koska a-kirjaimen ensimmäisestä merkkipaikasta on 2. paikka.

Jos vaihdan lähtöasennon arvoksi 1, se palauttaa arvon 5.

Instr (3, ”Bangalore”, ”a”) .

Syy miksi se palauttaa 5, koska mainitsin lähtökohdan etsiä a-kirjainta vain kolmannesta kirjaimesta. Joten toisen ilmestyneen “a”: n sijainti on 5.

Joten voimme löytää jokaisen merkkijonon välilyönnin käyttämällä tätä. Kun löydämme välilyönnin sijainnin, meidän on vähennettävä se merkkijonon kokonaispituudesta käyttämällä LEN: ää.

Esimerkiksi merkkijonossa “New York” merkkien kokonaismäärä on 8 välilyönnin kanssa ja välilyönnin sijainti on 4.. Joten 8-4 = 4 oikea poimii 4 merkkiä oikealta.

Katso nyt alla oleva koodi viitteellesi.

Koodi:

 Oikea alaesimerkki_esimerkki3 () Dim k kuten merkkijono Dim L kuin merkkijono Dim S kuten merkkijono L = Len ("Michael Clarke") S = InStr (1, "Michael Clarke", "") k = Right ("Michael Clarke", L - S) MsgBox k End Sub 

Yllä olevassa koodimuuttujassa "L" palauttaa 14 ja muuttuja "S" palauttaa 8.

Oikeassa VBA-kaavassa olen käyttänyt L - S eli 14-8 = 6. Joten oikealta puolelta 6 merkkiä eli “Clarke”.

Oikean toiminnon silmukat Excel VBA: ssa

Kun meidän on sovellettava VBA RIGHT -toimintoa monilla soluilla, meidän on sisällytettävä tämä silmukoiden sisään. Katso esimerkiksi alla olevaa kuvaa.

Emme voi käyttää useita koodirivejä merkkijonon purkamiseksi oikealta puolelta. Joten meidän on sisällytettävä silmukoita. Alla oleva koodi tekee sen yllä oleville tiedoille.

Koodi:

 Oikea_esimerkki4 () Dim k merkkijonona Dim L kuten merkkijono Dim S merkkijonona Dim a kokonaislukuna a = 2 - 5 L = Len (solut (a, 1). Arvo) S = InStr (1, solut (a, 1) ) .Arvo, "") Solut (a, 2) .Arvo = Oikea (Solut (a, 1), L - S) Seuraava loppuosa 

Tämän koodin tulos on seuraava.


$config[zx-auto] not found$config[zx-overlay] not found