Useiden toimintojen joukossa, jotka voidaan saavuttaa koodaamalla makroja Excelissä, on mahdollisuus palauttaa kaikki tekstin osumat kunhan ne on asetettu parametreihin.
Toiminta ”Suorittaa”Käytetäänkö lauseketta palauttamaan kaikki Visual Basicissa luodun hakumerkkijonon sisältämät hakutulokset.
Visual Basicin ansiosta voit helpottaa työskentelyäsi Excelissä, koska tämän ohjelman avulla voit luoda makroja ja mukautettuja toimintoja. Samoilla makroilla voit tuoda tiedostonimiä tai kopioida tietoja yhdeltä taulukolta toiselle.
Mikä on säännöllisen lausekemallin tehtävä, joka huolehtii tekstin kaikkien vastaavuuksien palauttamisesta?
Ensimmäinen askel on luo regex -objekti nimetty funktio ”Ottelut” jossa parametrien avulla arvo löydetään solusta, johon henkilö on kirjoittanut.
Tavoite makrokoodin avulla, tämä palauttaa viestin löydetyistä osumista tekstissä erotuksella.
Koodaus funktion kuvion luomiseksi
On selvää, että seuraavaksi luotava säännöllinen lausekemalli on toiminto, joka vastaa taulukkoon syötettyjen tekstien validoinnista.
Pääsy ”Kehittäjä”Ja klikkaamalla”Visuaalinen perus”Luo ensimmäinen”Moduuli”Joka sisältää toiminnon koodin.
Aloitat asettamalla toiminnon alkamisen, antaa sille otteluiden nimen ja sulkeiden sisään on sijoitettava soluun syötetyn tekstin arvoparametrit merkkijonona.
Julkiset toiminnot vastaavat (ByVal -solu merkkijonona)
Kun tämä on tehty, voit alkaa kirjoittaa säännöllisen lausekkeen objektia, joka muodostaa jäsentämallin ja antaa sille haluamasi nimen (SS).
Aseta SS = CreateObject (”VBScript.RegExp”)
Aloita muuttuja, jonka nimeät tekstinä, jotta saat selville kaikki vastaavuudet löytyy, kun makro suoritetaan, joka on tyyppiä merkkijono ja aloitetaan nollasta.
Himmennä teksti merkkijonoksi
Teksti = ””
Seuraavaksi määrität säännöllisen lausekkeen ominaisuudet, joihin ne kaikki sijoitetaan tosi- ja kuvio on kirjaimet a – z, joihin liittyy summasymboli ”+”Voit myös jäsentää minkä tahansa muun tekstin merkkijonosta.
SS: n kanssa
.Global = Totta
.Multiline = Totta
.IgnoreCase = Totta
.Kuvio = ”[a-z]+ ”
Lopeta
Jos tekstissä on täsmäys, se on purettava käyttämällä suorittaatai muuten se näyttää viestin, jossa todetaan, että mitään ei löytynyt.
Jos etsit sisältöä, sinun on asetettava muuttuja, jonka nimeät löydetyksi sijoittaaksesi vastaavan solun arvon.
Huomaa, että jokainen löydetty osuma kulkee tässä esimerkissä annetulla auttajamuuttujalla ”x”rakenteessa”Jokaiselle”.
Jos SS.test (solu) Sitten
Joukko löytyi = SS.Toteuta (solu)
Jokaiselle x In löytyi
Aux = x
Jos teksti = ”” Sitten
Teksti = ylimääräinen
Muu
Teksti = teksti + ”| ”+ Yl
Loppu Jos
Seuraava x
Lopuksi se määrittää, että säännöllisen lausekkeen objektin arvo on teksti, joka syötetään soluun, tai asettaa viestin, jos vastaavuuksia ei löydy, toiminnon lopettamiseksi.
Osumat = teksti
Muu
Osumat = ”Ei osumia”
Loppu Jos
Lopeta toiminto
Tuloskoodi
Jos haluat palauttaa kaikki tekstin osumat, uusi ”Moduuli”Luo koodi, joka näyttää solun sisällön analyysin tuloksen, joka toimii aiemmin luodun mallin mukaisesti.
Tähän lisätään kaksi muuttujaa nimeltä arvo ja merkkijonotyyppi jolle toiminnon arvot määritetään.
Alaosumat ()
Dim -arvo, merkkijono merkkijonona
Arvo = ActiveCell.Value
Merkkijono = vastaa (arvo)
MsgBox -merkkijono
End Sub
Tällä tavalla toiminto ja makro on saatu valmiiksi, ja voit testata lisäämällä sisältöä soluun, jossa on eri symboleja, ja avaamalla ”Makrot” painaa ”Juosta”Tietoja toiminnosta.
Se päättyy näyttämällä ikkuna, jossa vastaavuudet ovat vakiintuneiden parametrien sisällä ja erotettu toisistaan disjunktion symbolilla.
Jos työskentelet tämän ohjelman kanssa, saatat jossain vaiheessa esittää virheen, mutta nämä on helppo ratkaista.