VBA -merkkijonojen ja alijonojen toiminnot

VBA: ssa on monia merkkijonotoimintoja, joiden avulla voit käsitellä koodisi tekstiä ja merkkijonoja ja käsitellä niitä. Tässä opetusohjelmassa aiomme käsitellä toimintoja, joiden avulla voit poimia alimerkkijonoja merkkijonoista, poistaa välilyöntejä merkkijonoista, muuntaa tekstin tai merkkijonon tapauksen, vertailla merkkijonoja ja muita hyödyllisiä merkkijonotoimintoja.

Alamerkin purkaminen

VBA -vasemman merkkijonon toiminto

VBA Left Function -toiminnon avulla voit poimia alimerkkijonon tekstistä tai merkkijonosta vasemmalta puolelta alkaen. VBA: n vasemman merkkijonon funktion syntaksi on:

Vasen (merkkijono, merkkien määrä) missä:

  • Jono - alkuperäinen teksti.
  • Merkkien lukumäärä - Kokonaisluku, joka määrittää alkuperäisestä tekstistä otettavien merkkien määrän alusta alkaen.

Seuraava koodi näyttää, kuinka voit käyttää vasemman merkkijonon toimintoa annetun merkkijonon neljän ensimmäisen merkin poimimiseen:

1234567891011 Sub KäyttäenLeftStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "AutomateExcel"valueTwo = Vasen (valueOne, 4)MsgBox -arvo KaksiEnd Sub

Tulos on:

Vasen toiminto on poiminut AutomateExcelin neljä ensimmäistä kirjainta, jotka ovat automaattisia.

VBA -oikean merkkijonon toiminto

VBA Right Function -toiminnon avulla voit poimia alimerkkijonon tekstistä tai merkkijonosta alkaen oikealta puolelta. VBA -oikean merkkijonon funktion syntaksi on:

Oikea (merkkijono, merkkien määrä) missä:

  • Jono - alkuperäinen teksti.
  • Merkkien lukumäärä - Kokonaisluku, joka määrittää alkuperäisestä tekstistä poimittavien merkkien määrän lopusta alkaen.

Seuraava koodi näyttää, miten oikean merkkijonon avulla voit purkaa merkkijonon neljä viimeistä merkkiä:

1234567891011 Osa käyttämällä oikeaa merkkijonotoimintoa ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "AutomateExcel"valueTwo = Oikea (valueOne, 4)MsgBox -arvo KaksiEnd Sub

Tulos on:

Oikea funktio on poiminut AutomateExcelin neljä viimeistä kirjainta, jotka ovat xcel.

VBA Mid String -toiminto

VBA -keskitoiminnon avulla voit poimia alimerkkijonon tekstistä tai merkkijonosta mistä tahansa määritetyn merkkijonon paikasta alkaen. VBA Mid String -toiminnon syntaksi on:

Keskellä (merkkijono, aloituspaikka, [merkkien määrä]) missä:

  • Jono - alkuperäinen teksti.
  • Aloituspaikka - Paikka alkuperäisessä tekstissä, josta toiminto alkaa poimia.
  • Merkkien määrä (Valinnainen) - Kokonaisluku, joka määrittää merkkien lukumäärän, joka poistetaan alkuperäisestä tekstistä alkaen Starting_position. Jos se on tyhjä, MID -toiminto palauttaa kaikki merkit Starting_position -kohdasta.

Seuraava koodi näyttää, miten Mid String -toiminnon avulla voit purkaa neljä merkkiä alkaen merkkijonon toisesta sijainnista tai merkistä:

1234567891011 Sub KäyttämälläTheMidStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "AutomateExcel"valueTwo = Keskitaso (valueOne, 2, 4)MsgBox -arvo KaksiEnd Sub

Tulos lähetetään viestilaatikkoon:

Keskitoiminto on poiminut AutomateExcelin neljä kirjainta alkaen toisesta merkistä/paikasta/kirjaimesta, jotka ovat utom.

Alimerkkijonon sijainnin löytäminen

VBA Instr String -toiminto

VBA Instr -toiminto palauttaa alimerkkijonon alkuaseman toisen merkkijonon sisällä. Tämä toiminto erottaa kirjaimet ja kirjaimet. VBA Instr String -toiminnon syntaksi on:

Instr ([Aloita], Merkkijono, Alimerkkijono, [Vertaa]) missä:

  • Alkaa (Valinnainen) - Tämä määrittää toiminnon aloituskohdan, josta haetaan. Jos tyhjä, käytetään oletusarvoa 1.
  • Jono - alkuperäinen teksti.
  • Alimerkkijono- Alkuperäisen tekstin alimerkkijono, jonka sijainnin haluat löytää.
  • Vertailla (Valinnainen)- Tämä määrittää vertailun tyypin. Jos tyhjä, käytetään binääristä vertailua.

-vbBinaryCompare - Binaarinen vertailu (isot ja pienet kirjaimet katsotaan erilaisiksi)
-vbTextCompare - Tekstin vertailu (isot ja pienet kirjaimet pidetään samoina)
-vbDatabaseCompare - Tietokantojen vertailu (Tätä vaihtoehtoa käytetään vain Microsoft Accessissa ja se on tietokantaan perustuva vertailu)

Seuraavassa koodissa kerrotaan, kuinka voit käyttää Instr String -toimintoa alijonon "Th" ensimmäisen esiintymisen määrittämiseen pääjonossa:

123456789101112 Osa KäyttämälläInstrStringFunction ()Himmennä arvo Yksi merkkijononaSubstringin himmentäminen kokonaislukunavalueOne = "Tämä on teksti"positionofSubstring = InStr (1, arvoOne, "Th")Virheenkorjaus.Tulosta alijonoEnd Sub

Tulos (tulostetaan välittömään ikkunaan) on:

Instr -funktio on palauttanut alijonon "Th" ensimmäisen esiintymispaikan, joka on 1. Huomaa, että tämä toiminto sisältää laskut.

VBA InstrRev -merkkijonotoiminto

VBA InstrRev -funktio palauttaa alijonon alkuaseman toisen merkkijonon sisällä, mutta alkaa laskea sijainnin merkkijonon lopusta. Tämä toiminto erottaa kirjaimet ja kirjaimet. VBA InstrRev -merkkijonotoiminnon syntaksi on:

InstrRev (merkkijono, alimerkkijono, [aloita], [vertaa]) missä:

  • Jono - alkuperäinen teksti.
  • Alimerkkijono- Alkuperäisen tekstin alimerkkijono, jonka sijainnin haluat löytää.
  • Alkaa (Valinnainen) - Tämä määrittää sijainnin, josta haku aloitetaan. Jos se on tyhjä, toiminto aloittaa haun viimeisestä merkistä.
  • Vertailla (Valinnainen)- Tämä määrittää vertailun tyypin. Jos tyhjä, käytetään binääristä vertailua.

-vbBinaryCompare - Binaarinen vertailu (isot ja pienet kirjaimet katsotaan erilaisiksi)
-vbTextCompare - Tekstin vertailu (isot ja pienet kirjaimet pidetään samoina)
-vbDatabaseCompare - Tietokantojen vertailu (Tätä vaihtoehtoa käytetään vain Microsoft Accessissa ja se on tietokantaan perustuva vertailu)

Seuraava koodi näyttää, kuinka voit käyttää InstrRev -merkkijonotoimintoa alijonon "Th" ensimmäisen esiintymisen määrittämiseen pääjonossa, merkkijonon lopusta alkaen:

1234567891011 Sub UsingTheInstrRevStringFunction ()Himmennä arvo Yksi merkkijononaSubstringin himmentäminen kokonaislukunavalueOne = "Tämä on teksti"positionofSubstring = InStrRev (valueOne, "Th")Virheenkorjaus.Tulosta alijonoEnd Sub

Tulos lähetetään välittömään ikkunaan:

InstrRev -funktio on palauttanut alimerkkijonon "Th" ensimmäisen esiintymispaikan, mutta aloittaa laskennan lopusta, joka on 9. Huomaa, että tämä toiminto sisältää laskut.

Välilyöntien poistaminen merkkijonosta

VBA LTrim -merkkitoiminto

VBA LTrim -toiminto poistaa tekstistä tai merkkijonosta kaikki johtavat välilyönnit. VBA LTrim String -toiminnon syntaksi on:

LTrim (merkkijono) missä:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, kuinka VBA LTrim -toiminnon avulla voit poistaa annetun merkkijonon alkutilat:

123456789101112 Sub Käyttämällä TheLTrimStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "Tämä on verkkosivuston osoite https://easyexcel.net/excel/"valueTwo = LTrim (valueOne)MsgBox -arvo YksiMsgBox -arvo KaksiEnd Sub

Tulokset ovat:

LTrim -toiminto on poistanut arvoväylän ensimmäiset välilyönnit, jotka näkyvät toisessa viestiruudussa.

VBA RTrim -merkkitoiminto

VBA RTrim -toiminto poistaa kaikki tekstin tai merkkijonon perät. VBA RTrim String -toiminnon syntaksi on:

RTrim (merkkijono) missä:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, kuinka VBA RTrim -toiminnon avulla voit poistaa annetun merkkijonon perät:

123456789101112 Sub KäyttämälläRTrimStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "Tämä on verkkosivuston osoite https://easyexcel.net/excel/"valueTwo = RTrim (valueOne)MsgBox -arvo YksiMsgBox -arvo KaksiEnd Sub

Toimitetut tulokset ovat:

RTrim -toiminto on poistanut arvoväylän jälkitilat, jotka näkyvät toisessa viestiruudussa.

VBA Trim String -toiminto

VBA -leikkaustoiminto poistaa tekstistä tai merkkijonosta kaikki edessä ja takana olevat välilyönnit. VBA Trim String -toiminnon syntaksi on:

Leikkaa (merkkijono) missä:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, kuinka VBA -leikkaustoiminnon avulla voit poistaa annetun merkkijonon alku- ja perään:

123456789101112 AlamerkintäTrimStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "Tämä on verkkosivuston osoite https://easyexcel.net/excel/"valueTwo = Leikkaus (valueOne)MsgBox -arvo YksiMsgBox -arvo KaksiEnd Sub

Tulokset ovat:

Leikkaustoiminto on poistanut toiselle viestilaatikolle näkyvän arvoetwo: n eteen ja taakse jäävät välilyönnit.

VBA -kotelotoiminnot

VBA LCase -merkkitoiminto

VBA LCase -toiminto muuntaa tekstin tai merkkijonon kirjaimet pieniksi kirjaimiksi. VBA LCase String -toiminnon syntaksi on:

LCase (merkkijono), jossa:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, kuinka voit käyttää LCase -merkkijonotoimintoa kaikkien annetun merkkijonon kirjainten muuttamiseen pieniksi kirjaimiksi:

1234567891011 Osa käyttämällä TheLCaseStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "TÄMÄ ON TUOTE"valueTwo = LCase (valueOne)MsgBox -arvo KaksiEnd Sub

Tulos on:

LCase -toiminto on muuttanut kaikki merkkijonon kirjaimet pieniksi kirjaimiksi.

VBA UCase String -toiminto

VBA UCase -toiminto muuntaa tekstin tai merkkijonon kirjaimet isoiksi kirjaimiksi. VBA UCase String -toiminnon syntaksi on:

UCase (merkkijono), jossa:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, miten UCase -merkkijonotoiminnon avulla voit muuntaa kaikki annetun merkkijonon kirjaimet isoiksi kirjaimiksi:

1234567891011 Osa käyttämällä TheUCaseStringFunction -toimintoa ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "tämä on tuote"valueTwo = UCase (valueOne)MsgBox -arvo KaksiEnd Sub

Tulos on:

UCase -toiminto on muuttanut kaikki merkkijonon kirjaimet isoiksi kirjaimiksi.

VBA StrConv -toiminto

VBA StrConv -toiminto voi muuntaa tekstin tai merkkijonon kirjaimet isoiksi, pieniksi, oikeiksi kirjaimiksi tai unicodeiksi määrittämäsi muunnostyypin mukaan. VBA StrConv -merkkijonotoiminnon syntaksi on:

StrConv (merkkijono, muunnos, [LCID]), jossa:

  • Jono - alkuperäinen teksti.
  • Tulos - haluamasi tulos.
  • [LCID] (Valinnainen) -Valinnainen parametri, joka määrittää LocaleID -tunnuksen. Jos se on tyhjä, käytetään järjestelmän LocaleID -tunnusta.

Seuraava koodi näyttää, kuinka StrConv -merkkijonotoiminnon avulla voit muuntaa merkkijonon oikeiksi kirjaimiksi:

1234567891011 Sub KäyttäenTheStrConvStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "tämä on tuote"valueTwo = StrConv (valueOne, vbProperCase)MsgBox -arvo KaksiEnd Sub

Tulos on:

Määrität suoritettavan konversion tyypin käyttämällä tulosparametria:

  • vbLowerCase muuntaa kaikki tekstin kirjaimet pieniksi kirjaimiksi.
  • vbUpperCase muuntaa kaikki tekstin kirjaimet isoiksi kirjaimiksi.
  • vbProperCase muuntaa jokaisen tekstin sanan ensimmäisen kirjaimen isoiksi kirjaimiksi, kun taas kaikki muut kirjaimet säilytetään pieninä kirjaimina.
  • vbUnicode muuntaa merkkijonon unicodeksi.
  • vbFromUnicode muuntaa merkkijonon Unicode -koodista järjestelmän oletuskoodisivuksi.

Jousien vertailu

VBA StrComp -toiminto

VBA StrComp -merkkitoiminnon avulla voit verrata kahta merkkijonoa. Toiminto palauttaa:

  • 0 jos kaksi merkkijonoa vastaavat
  • -1, jos merkkijono1 on pienempi kuin merkkijono2
  • 1, jos merkkijono1 on suurempi kuin merkkijono2
  • Nolla -arvo, jos jompikumpi merkkijonoista oli tyhjä

Seuraava koodi näyttää, miten StrComp -funktiota käytetään kahden merkkijonon vertaamiseen:

123456789101112 Sub KäyttäenTheStrCompStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoaHämärä tulos vertailussa kokonaislukunavalueOne = "AutomateExcel"valueTwo = "AutomateExcel"resultofComparison = StrComp (arvoOne, arvoTwo)Virheenkorjaus.Tuloksen tulos vertailustaEnd Sub

Tulos on:

StrComp -toiminto on löytänyt tarkan vastaavuuden näiden kahden merkkijonon välillä ja palauttanut 0.

VBA Like Operaattori

VBA Like -operaattorin avulla voit verrata tekstiä tai merkkijonoa kuvioon ja nähdä, onko osumaa. Käytät yleensä Like -operaattoria yhdessä jokerimerkkien kanssa. Seuraava koodi näyttää Like -operaattorin käytön:

123456789101112 Sub Käyttämällä TheLikeOperatorInVBA ()Himmennä arvo Yksi merkkijononavalueOne = "Katsotaan tulosta"Jos arvoOne Like "*view*" SittenMsgBox "Löytyy osuma, tämä merkkijono sisältää sananäkymän"MuuMsgBox "Vastaavuutta ei löytynyt"Loppu JosEnd Sub

Tulos on:

Jokerimerkit, joita voit käyttää Like -operaattorin kanssa hakutulosten etsimiseen, ovat:

  • ? joka vastaa yhtä merkkiä
  • # joka vastaa yhtä numeroa
  • * joka vastaa nollaa tai enemmän merkkejä

Seuraava koodi näyttää, miten käyttäisit Like -operaattoria ja? yleismerkki, joka vastaa koodisi mallia:

123456789101112 Sub UsingTheLikeOperatorWithAWildcardInVBA ()Himmennä arvo Yksi merkkijononavalueOne = "The"Jos valueOne Like "?? e" SittenMsgBox "Löytyy osuma, vastaava malli löytyi"MuuMsgBox "Vastaavuutta ei löytynyt"Loppu JosEnd Sub

Tulos on:

Muita hyödyllisiä VBA -merkkijonotoimintoja

VBA Korvaa merkkijono -toiminto

VBA -korvaustoiminto korvaa merkkijonon merkkijoukon toisella merkkijoukolla. VBA Replace String -toiminnon syntaksi on:

Korvaa (Jono, Etsi, Korvaa, [Aloita], [Laske], [Vertaa]) missä:

  • Jono - alkuperäinen teksti.
  • Etsi - alijono, jota haetaan alkuperäisestä tekstistä.
  • Korvaa - Alimerkkijono, jolla korvataan Etsi -alijono.
  • Alkaa (Valinnainen)- Paikka aloittaa haku alkuperäisestä tekstistä. Jos tyhjä, arvoa 1 käytetään ja toiminto alkaa ensimmäisestä merkkipaikasta.
  • Kreivi (Valinnainen)- Etsi -alijonon esiintymien määrä alkuperäisessä korvattavassa tekstissä. Jos se on tyhjä, kaikki Find -alijonon esiintymät korvataan.
  • Vertailla (Valinnainen)- Tämä määrittää vertailun tyypin. Jos tyhjä, käytetään binääristä vertailua.

    -vbBinaryCompare - Binaarinen vertailu
    -vbTextCompare - Tekstin vertailu
    -vbDatabaseCompare - Tietokantojen vertailu (Tätä vaihtoehtoa käytetään vain Microsoft Accessissa ja se on tietokantaan perustuva vertailu.)

Seuraava koodi näyttää Korvaa merkkijono -toiminnon käyttämisen:

1234567891011 Sub UsingTheReplaceStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "ProductABC"valueTwo = Korvaa (valueOne, "ABC", "XYZ")MsgBox -arvo KaksiEnd Sub

Tulos on:

Korvaustoiminto löysi ProductABC: n alimerkkijonon ABC ja korvasi sen merkkijonolla XYZ.

VBA StrReverse -toiminto

VBA StrReverse -toiminto kääntää tietyn tekstin tai merkkijonon merkit. VBA StrReverse String -toiminnon syntaksi on:

StrReverse (merkkijono) missä:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää, miten VBA StrReverse -toimintoa käytetään merkkijonon Tuotteen merkkien kääntämiseen:

1234567891011 Sub Käyttämällä TheStrReverseStringFunction ()Himmennä arvo Yksi merkkijononaDim -arvo Kaksi merkkijonoavalueOne = "Tuote"valueTwo = StrReverse (valueOne)MsgBox -arvo KaksiEnd Sub

Tulos on:

VBA Len -merkkitoiminto

VBA Len -toiminto palauttaa merkkijonon merkkien määrän. VBA Len -merkkitoiminnon syntaksi on:

Len (merkkijono) missä:

  • Jono - alkuperäinen teksti.

Seuraava koodi näyttää kuinka Len -merkkijonotoiminnon avulla määritetään merkkijonon pituus AutomateExcel:

1234567891011 OsaLenFunction -toiminnon käyttäminen ()Himmennä arvo Yksi merkkijononaHimmennä merkkijonoPituus kokonaislukunavalueOne = "AutomateExcel"stringLength = Len (valueOne)Virheenkorjaus.Tulosta merkkijonoPituusEnd Sub

Tulos on:

Len -funktio on laskenut kaikki merkit AutomateExcel -tekstissä, joka on 13 kirjainta.

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave