VBA Etsi ja korvaa - Kuinka löytää ja korvata sanoja Excel VBA: ssa?

Etsi ja korvaa toiminto VBA: ssa

Jos excel-työsi sisältää rutiinitehtäviä löytää jotain ja korvata se jollakin, tarvitset tämän artikkelin millä hyvänsä. Koska tämän artikkelin lukemisen jälkeen säästät todennäköisesti 80% ajastasi oppimalla tämän VBA-koodaustekniikan. Etsi ja korvaa Excelissä on usein käytetty työkalu, ja voimme toteuttaa saman myös VBA: n kanssa. Aikaisemmassa artikkelissamme "VBA Find" olemme osoittaneet, kuinka voit löytää FIND-menetelmän VBA: ssa. Tässä artikkelissa näytämme sinulle, kuinka VBA: n "Etsi ja korvaa" -menetelmää käytetään.

Seuraa tätä artikkelia oppiaksesi tämän tekniikan.

VBA Etsi ja korvaa syntakse

Jos haluat käyttää Etsi ja korvaa -menetelmää VBA: ssa, meidän on noudatettava alla annettuja vaiheita. Ensinnäkin olemme valinneet solualueen, joten mainitse solualue käyttämällä RANGE-objektia VBA: ssa.

Laita nyt piste (.) Nähdäksesi IntelliSense-luettelon.

Valitse Korvaa-menetelmä luettelosta.

Voimme nähdä korvaavan menetelmän valtavan parametriluettelon. Nyt näemme jokaisen parametrin selityksen alla.

  • Mitä: Tämä ei ole muuta kuin mitä meidän on löydettävä arvon korvaamiseksi.
  • Korvaava: Löydetyn arvon kanssa, mikä pitäisi olla uusi arvo, joka korvataan.
  • Katso: Tässä tarkoitetaan sitä, haluammeko tarkastella koko sisältöä vai vain osan sisällöstä. Voimme toimittaa kaksi parametria ”xlWhole” ja “xlPart”.
  • Hakujärjestys: Tällä tarkoitetaan hakujärjestystä, joko rivejä tai sarakkeita. Voimme toimittaa täältä kaksi parametria ”xlByRows” ja “xlByColumns”.
  • Match Case: Etsimämme sisältö erottaa kirjainkokoja. Jos isot ja pienet kirjaimet ovat TOSI tai muuten EPÄTOSI.
  • Hakumuoto: Voimme myös etsiä sisältöä muotoilemalla etsimämme arvon.
  • Korvaa muoto: Voimme myös korvata yhden muodon toisella.

Esimerkkejä VBA-etsinnästä ja korvaamisesta Excelissä

Alla on joitain esimerkkejä Excel VBA Find and Replace -menetelmästä.

Esimerkki # 1 - VBA Etsi ja korvaa sana

Okei, katsotaanpa seuraava esimerkki ymmärtääksemme VBA Find and Replace -menetelmän. Katsokaa seuraavia tietoja.

Vaihe 1: Mainitse ensin korvattu solualue. Tässä esimerkissä alue on välillä A1 - B15, joten koodi on Range ("A1: B15").

Koodi:

Sub Replace_Example1 () Range ("A1: B15") End Sub

Vaihe 2: Laita nyt piste nähdäksesi IntelliSense-luettelon.

Vaihe 3: Valitse Korvaa-menetelmä IntelliSense-luettelosta.

Vaihe 4: Mainitse mikä parametri nimellä "syyskuu".

Koodi:

Alue ("A1: B15"). Korvaa Mikä: = "Syyskuu"

Vaihe 5: Seuraavaksi Korvaa parametrilla pitäisi olla uusi arvo, joka korvataan nimellä "Joulukuu".

Koodi:

Alue ("A1: D4"). Korvaa Mikä: = "Syyskuu", Korvaus: = "Joulukuu"

Ok, jätä kaikki muut parametrit huomiotta. Suorita nyt VBA-koodi nähdäksesi korvaavan menetelmän VBA: lla.

Joten se on korvannut koko syyskuun sanalla "joulukuu".

Esimerkki # 2 - Kirjainkoko merkitsevä korvaaminen

Kehittyneempi esimerkki VBA Find & Replace -menetelmästä käyttää kirjainkoon vaihtamista. Tässä esimerkissä olen luonut tämän näytetiedon, kuten alla olevassa kuvassa näkyy.

Meillä on kaksi isoa kirjainta olevaa solutietoa ”HELLO”. Missä ikinä meillä on iso HELLO, se tulisi korvata uudella sanalla "Hiii".

Kuten tavallista, kirjoita koodi, mainitse ensin mitä löytää ja mitä korvata.

Koodi:

Sub Replace_Example2 () Range ("A1: D4"). Korvaa What: = "HELLO", Replace: = "Hiii" End Sub

Seuraavaksi argumentiksi "Match Case" kirjoita ehto TOSI.

Koodi:

Alue ("A1: D4"). Korvaa Mikä: = "HELLO", Korvaus: = "Hiii", MatchCase: = Tosi

Suorita nyt koodi. Se korvaa vain iso kirjain "HELLO" sanoilla "Hiii".

Kuvittele, ettet ole soveltanut Match Case -argumenttia VBA: ssa, silloin se korvaa kaikki "Hei" sanoilla "Hiii".

Huomaa: Olen poistanut Match Case -argumentin täältä. Oletusarvoisesti MATCH CASE -argumentin arvo on EPÄTOSI.

Kuten voimme nähdä yllä olevasta kuvasta, se on korvannut kaikki "hei" -sanat sanoilla "hiii".

Joten aina, kun haluamme käyttää MATCH CASE -kriteereitä, meidän on käytettävä argumenttia TOSI-arvona, ja oletusarvoisesti tämä argumentin arvo on FALSE. Tällä tavoin voimme etsiä jotain ja etsiä löydetyn arvon jollakin muulla menetelmällä "ETSI & KORVAA".

Mielenkiintoisia artikkeleita...