Excel VBA -korvaa toiminto
Kuten Excelissä, meillä on toiminto, jolla voimme löytää ja korvata kaikki sanat, merkit tai virkkeet millä tahansa kirjaimilla. Mutta tällä prosessilla voimme korvata vain yhden tyyppisen lauseen tai kirjaimen kerrallaan. Voimme korvata VBA Replace Function -toiminnon avulla yhtä monta sanaa tai kirjainta tai lauseita yhdellä otoksella. Tämä säästää valtavasti aikaa ja vaivaa suorittamalla yksi toiminto useita kertoja. Tätä varten käytämme Korvaa-toimintoa, joka on sisäänrakennetussa VBA-toimintoluettelossa.
Korvaa-funktion syntaksin ja argumentin alapuolella VBA: ssa.
Kuinka käyttää Excel VBA -korvaa toimintoa?
Opimme käyttämään VBA Replace Excel -toimintoa muutamalla esimerkillä.
Voit ladata tämän VBA Replace Excel Template täältä - VBA Replace Excel TemplateVBA-korvaustoiminto - esimerkki # 1
Meillä on esimerkkejä joistakin lauseista, joissa korvaamme yhden sanan ja liitä päivitetty lause lauseen B sarakkeeseen.
Noudata alla olevia vaiheita käyttääksesi Korvaa-toimintoa Excel VBA: ssa.
Vaihe 1: Siirry kohtaan VBA ja valitse Lisää valikko -välilehdeltä Moduuli.
Vaihe 2: Kirjoita nyt alaluokka suoritetun toiminnon nimeen tai mihin tahansa valintasi nimeen alla olevan kuvan mukaisesti.
Koodi:
Sub VBA_Replace2 () End Sub
Vaihe 3: Määritä nyt ulottuvuus pitkäksi, koska valitsemme kokonaisen lauseen. Täällä olemme ottaneet sen nimellä X.
Koodi:
Sub VBA_Replace2 () himmentää X pitkään päähän
Vaihe 4: Valitse nyt pitkässä X: ssä suurin alue, johon tietomme voivat nousta. Täällä olemme ottaneet A1000-solualueeksi ja mennäksemme siihen asti, kunnes tietomme alkavat käyttää loppua (xlUp), jota seuraa piste (.) -Rivi. Mikä tarkoittaa, että siirrymme samassa sarakkeessa ylöspäin siihen riviin, jolla on tiedot. Tämä prosessi elämässä Ctrl + Ylös nuolinäppäin Excelissä.
Koodi:
Sub VBA_Replace2 () Dim X As Long X = Alue ("A1000"). Loppu (xlUp) .Row End Sub
Vaihe 5: Määritä nyt taas yksi ulottuvuus Y niin kauan kuin alla on osoitettu.
Koodi:
Sub VBA_Replace2 () Himmennä X As Long X = Range ("A1000"). End (xlUp) .Row Dim Y As Pitkä End Sub
Vaihe 6: Aloita nyt Seuraava silmukka toiselle määritetylle ulottuvuudelle Y solun sijainnista 2 X-alueelle (viimeinen täytetty solu)
Huomaa: Solun 2 valitseminen tarkoittaa, että emme harkitse otsikkoa tässä korvaamiseksi.Koodi:
Sub VBA_Replace2 () Himmennä X niin kauan X = Alue ("A1000"). Loppu (xlUp) .Kohda himmentä Y niin kauan kuin Y = 2 - X seuraavaan Y Loppu Sub
Vaihe 7: Valitse nyt sarakkeen B arvo asteikolla Y, jota seuraa piste (.), Tämä on kuin funktion lisääminen exceliin.
Koodi:
Sub VBA_Replace2 () Dim X As Long X = Range ("A1000"). End (xlUp) .Row Dim Y As Long Y = 2 to X X Range ("B" & Y) .Value = Next Y End Sub
Vaihe 8: Kuten olemme nähneet Korvaa-toiminnon VBA-syntaksissa, kirjoita nyt Korvaa ja valitse sarake A ja Y merkkijonon ensimmäiseksi lausekkeeksi, jota seuraa sanat, jotka meidän on korvattava taulukosta.
Koodi:
Sub VBA_Replace2 () Himmennä X As Long X = Alue ("A1000"). End (xlUp) .Row Dim Y As Long Y = 2 to X X Range ("B" & Y) .Value = Korvaa (Range ("A "& Y), " Delhi ", " New Delhi ") Seuraava Y End Sub
Vaihe 9: Käännä nyt koko koodi ja suorita. Kun olemme tehneet sen, korvaamme lauseen A sanan Delhi sanasta “Delhi” teoksella “New Delhi” ja koko lause kopioidaan lauseeseen B.
Voimme valita sanasarjan tai lauseen ja korvata sen tarvittavilla kirjaimilla tai lauseilla.
VBA-korvaustoiminto - esimerkki 2
On myös toinen tapa korvata sanat tai lauseet VBA-koodauksen avulla. Tätä varten meillä on luettelo 7 aiheesta, jotka toistuvat. Ja meidän on korvattava nuo aiheiden nimet lisäämällä sarjanumerot ennen jokaista aiheen nimeä alla esitetyllä tavalla.
Kuten yllä olevassa kuvakaappauksessa voidaan nähdä, sarakkeessa E on yksilölliset nimet niille kohteille, jotka ovat siellä sarakkeessa B ja sarakkeessa F on aiheiden nimet, joiden sarjanumero on sen alussa.
Noudata alla olevia vaiheita käyttääksesi Korvaa-toimintoa VBA: ssa.
Vaihe 1: Siirry nyt VBA: han ja lisää Lisää-valikosta uusi moduuli. Kun se on saatu, aloita alaluokan kirjoittaminen funktion nimellä, joka suoritetaan alla olevan kuvan mukaisesti.
Koodi:
Sub VBA_Replace () End Sub
Vaihe 2: Arvioi nyt ulottuvuus Rng alueena, InputRng alueena ja ReplaceRng alueena . Voit valita muita kirjaimia tai sanoja alueiden määrittelemiseksi.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikolla himmennetty sisääntuloRng asteikolla, ReplaceRng asteikolla loppu Sub
Vaihe 3: Käytä nyt xTitleId- valintaikkunaa ja anna sille nimi. Täällä olemme nimenneet sen “ VBA_Replace ”.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikolla himmennetty sisääntuloRng asteikolla, ReplaceRng as Range xTitleId = "VBA_Replace" End Sub
Vaihe 4: Määritä nyt sovellus.Valinta InputRng: llä, tämä mahdollistaa valitun sovelluksen käytön VBA: ssa.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikolla himmennetty sisääntuloRng asteikolla, ReplaceRng asalueella xTitleId = "VBA_Replace" asetettu InputRng = sovellus.Valinta End Sub
Vaihe 5: Lisää seuraavalle riville 3 tyypin InputBox, Alkuperäinen alue, xTitleId ja InputRng. Alkuperäinen alue on luettelo sarakkeessa B luetelluista aiheista, jotka tarvitaan korvaamiseksi. XTitledId on suoritetun toiminnon valintaikkunoiden nimet. Ja InputRng on valikoima tietotaulukoita sarakkeissa E ja F.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikkona himmennys InputRng asteikkona xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) End Sub
Vaihe 6: Määritä seuraavalla rivillä tulo ReplaceRng: lle ja valitse tästä Korvaa alue -sarake. Loput kuin sama.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikkona himmennys InputRng asteikkona xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Aseta ReplaceRng = Application.InputBox ("Korvaa alue:", xTitleId, Tyyppi: = 8) End Sub
Vaihe 7: Nyt käytämme Application.Screenupdating-toimintoa, koska nimen mukaan sitä päivitetään, jos se on Väärä.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikkona himmennys InputRng asteikkona xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Aseta ReplaceRng = Application.InputBox ("Korvaa alue:", xTitleId, Tyyppi: = 8) Application.ScreenUpdating = False End Sub
Vaihe 8: Lisää nyt Seuraava-silmukka . Korvaa jokaiselle Rng-alueelle arvot ReplaceRng-sarakkeesta.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikkona himmennys InputRng asteikkona xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Aseta ReplaceRng = Application.InputBox ("Korvaa alue:", xTitleId, Tyyppi: = 8) Application.ScreenUpdating = Väärä jokaiselle Rng: lle ReplaceRng.Columns (1) .Kellot Seuraava loppu Sub
Vaihe 9: Korvaa viimeksi InputRng koko arkin Rng-arvolla olevilla arvoilla.
Koodi:
Sub VBA_Replace () himmennetty Rng asteikkona himmennys InputRng asteikkona xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Aseta ReplaceRng = Application.InputBox ("Korvaa alue:", xTitleId, Tyyppi: = 8) Application.ScreenUpdating = Väärä jokaiselle Rng: lle ReplaceRng.Columns (1) .Kellot InputRng.Korvaa mitä: = Rng.Value, korvaava: = Rng.Offset (0, 1) .Arvo, Lookat: = xlWhole Next End Sub
Vaihe 10: Kun olet valmis, käännä ja suorita koodi nyt. Saamme ja valintaikkuna nimellä VBA_Replace. Valitse täältä luettelo aiheista, jotka meidän on korvattava alkuperäisenä alueena, ja napsauta OK. Sitten saamme sieltä toisen ruudun, valitse Korvaa alue E2: sta F8: een . Tässä taulukossa on tiedot, jotka täytyy vaihtaa ja napsauttaa OK.
Saamme tiedot sarakkeeseen B, joka korvataan sarakkeen F tiedoista sarjanumerolla.
Yleiskuvaksi sarakkeessa E on yksilölliset aiheiden nimet. Ja sarakkeessa F on aiheiden nimet sarjanumeroin. Joten tällä sarakkeen B tiedoilla korvataan sarakkeen F tiedoilla.
Plussat VBA-korvaustoiminnosta
- Voimme korvata useita sanoja tai lauseita yhdellä laukauksella.
- Ei ole mitään sanojen tai tekstin rajoitusta, jota emme voi korvata.
- Vaihda syntaksi VBA: ssa on yhtä helppoa kuin SumIf-toiminnon käyttäminen excelissä.
- VBA-korvaus esimerkissä 1 esitetyllä tavalla on helpoin tapa soveltaa.
Muistettavat asiat
- Tallenna nimellä Marco Enabled Excel, jotta vältetään kirjoitetun koodin menettäminen VBA: ssa.
- Aina huomioi mitat siten, että se luo lisäarvoa, kun valitsemme koodissa.
- Varmista, että valitsit koko arkkialueen esimerkissä 2 esitetyllä tavalla, jos se on rajoitettu tuloksen saamiseksi. Tai muuten voit määrittää ja valita rajoitetun solualueen, jota käytetään Korvaa-toiminnossa.
Suositellut artikkelit
Tämä on opas VBA-korvaustoiminnolle. Tässä keskustelimme VBA Replace -sovelluksesta ja siitä, kuinka Excel VBA Replace Function -toimintoa käytetään, sekä käytännön esimerkkejä ja ladattavaa Excel-mallia. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -
- Täydelliset oppaat VBA-silmukoilla
- Kuinka käyttää VBA-tekemistä silmukan aikana?
- Mikä on VBA-numeromuoto?
- Kuinka luoda VBA MsgBox?