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 jotain, tarvitset tämän artikkelin hinnalla 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 excel -ohjelmassa käytetään usein työkalua, 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 riveillä tai sarakkeilla. Voimme toimittaa kaksi parametria tässä: “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ä.

Voit ladata tämän VBA Etsi ja korvaa Excel-malli täältä - VBA Etsi ja korvaa Excel-malli

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 korvattavien solujen alue. Tässä esimerkissä alue on A1: stä B15: een, 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: Seuraava Korvaa parametrilla pitäisi olla uusi arvo, joka korvataan nimellä "Joulukuu".

Koodi:

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

Ok, sivuuttaa kaikki muut parametrit. 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

Edistyneempi esimerkki VBA Find & Replace -menetelmästä käyttää kirjainkoon mukaista korvausmenetelmää. Tässä esimerkissä olen luonut tämän näytetiedon alla olevan kuvan mukaisesti.

Meillä on kaksi solutietoa isoilla kirjaimilla "HELLO". Aina kun meillä on iso kirjain "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 

Kirjoita seuraava argumentti "Match Case", kun kirjoitat ehdoksi TOSI.

Koodi:

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

Suorita nyt koodi, se korvaa vain ison kirjaimen "HELLO" sanalla "Hiii".

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

Huomaa: Olen poistanut Match Case -argumentin tästä, oletusarvoisesti MATCH CASE -argumentin arvo on FALSE.

Kuten voimme nähdä yllä olevasta kuvasta, se on korvannut kaikki "hei" sanat "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".


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