Excel VBA csere funkció
Az Excelhez hasonlóan van egy olyan funkciónk, ahol bármilyen szót, karaktert vagy mondatot bármilyen betűvel megtalálhatunk és helyettesíthetünk. De ezen a folyamatonként egyszerre csak egyféle mondatot vagy betűt tudunk helyettesíteni. A VBA csere funkció segítségével egyetlen felvételben annyi szót vagy betűt vagy mondatot cserélhetünk ki. Ez óriási időt és erőfeszítést takarít meg az egyes tevékenységek többszöri elvégzésével. Ehhez a Csere funkciót használjuk, amely a beépített VBA funkciólistában található.
A VBA Replace funkció szintaxisa és argumentuma alatt.
Hogyan kell használni az Excel VBA csere funkciót?
Néhány példával megtanuljuk a VBA Replace Excel funkció használatát.
Itt letöltheti ezt a VBA Replace Excel sablont - VBA Replace Excel TemplateVBA csere funkció - 1. példa
Van néhány mondatmintája, amelyben egy szót kicserélünk, és beillesztjük a frissített mondatot a B mondat oszlopába.
Az Excel VBA Csere funkció használatához kövesse az alábbi lépéseket.
1. lépés: Lépjen a VBA-ra, és a Beszúrás menü lapon válassza a Modul menüpontot.
2. lépés: Most írjon alkategóriát egy végrehajtott függvény nevére vagy bármelyik nevére, az Ön által választott módon, az alább látható módon.
Kód:
Sub VBA_Replace2 () Sub
3. lépés: Most határozza meg a dimenziót hosszúnak, mivel a teljes mondatot kiválasztjuk. Itt X-ként vettük fel.
Kód:
Sub VBA_Replace2 () Dim X As Long End Sub
4. lépés: Most, abban a hosszú X-ben válassza ki a maximális tartományt, amíg az adataink felmehetnek. Itt A1000 cellatartományt vettünk, és addig, amíg az adataink el nem kezdődnek, End (xlUp) -ot és egy dot (.) Sort követünk. Ami azt jelenti, hogy felmegyünk ugyanazon oszlopban addig a sorig, amelyen vannak az adatok. Ez a folyamat az életben Ctrl + Fel nyíl billentyű az Excelben.
Kód:
Sub VBA_Replace2 () Dim X As Long X = Tartomány ("A1000"). End (xlUp) .Row End Sub
5. lépés: Most határozza meg még egy Y méretet, amíg az alább látható.
Kód:
Sub VBA_Replace2 () Dim X As Long X = Tartomány ("A1000"). Vége (xlUp) .Rim Dim Y As Long End Sub
6. lépés: Most indítsa el a Második meghatározott Y méretű Következő hurkot a 2. cella pozíciójától az X tartományig (utoljára kitöltött cella).
Megjegyzés: A 2. cella kiválasztása azt jelenti, hogy a fejléc helyettesítésére itt nem számítunk.Kód:
Sub VBA_Replace2 () Dim X As Long X = Range ("A1000"). End (xlUp) .Rim Dim Y As Long Y = Y = 2 - X Next Y End Sub
7. lépés: Most válassza ki a B oszlop értékét, mint tartományt, mint Y, majd egy pontot (.), Ez olyan, mint egy függvény beszúrása az excelbe.
Kód:
Sub VBA_Replace2 () Dim X As Long X = Range ("A1000"). End (xlUp) .Row Dim Y As Long Y = Y = 2 to X Range ("B" & Y) .Value = Next Y End Sub
8. lépés: Amint láttuk a Csere funkció fenti VBA szintaxisában, most írjuk be a Csere elemet, és válasszuk az A és Y oszlopot a karakterlánc első kifejezéséig, majd azokat a szavakat, amelyeket ki kell cserélnünk a táblázatból.
Kód:
Sub VBA_Replace2 () Dim X As Long X = Tartomány ("A1000"). Vége (xlUp) .Row Dim Y As Long Y = 2 - X Range ("B" és Y) .Value = Replace (Range ("A "& Y), " Delhi ", " Újdelhi ") Next Y End Sub
9. lépés: Most fordítsa le a teljes kódot, és futtassa. Ha ezt megtesszük, akkor az A mondatban a „Delhi” szót helyettesítjük az „Újdelhi” munkával, és az egész mondatot a B. mondatba másoljuk.
Kiválaszthatjuk a szavak vagy mondatok sorozatát, és helyettesíthetjük azokat a szükséges betűkkel vagy mondatokkal.
VBA csere funkció - 2. példa
Van egy másik módszer a szavak vagy mondatok kicserélésére a VBA kódolás segítségével. Ehhez van egy 7 témájú lista, amelyek ismétlődnek. És ki kell cserélnünk ezeket a tárgyneveket sorozatszámok hozzáadásával minden egyes tárgynév előtt, az alább látható módon.
Amint azt a fenti képernyőképen láthatjuk, az E oszlopnak egyedi neve van azoknak a alanyoknak, amelyek ott vannak a B oszlopban, az F oszlopban pedig a tárgynevek sorozatszámmal vannak a kezdetekben.
Kövesse az alábbi lépéseket a Csere funkció használatához a VBA-ban.
1. lépés: Most ugorjon a VBA-ra, és a Beszúrás menüből adjon hozzá új modult. Miután megkaptuk, kezdjük el írni az alkategóriát egy olyan funkció nevében, amelyet az alábbiak szerint hajtunk végre.
Kód:
Sub VBA_Replace () Sub
2. lépés: Most tekintsük meg az Rng dimenziót tartománynak, az InputRng mint tartományt és a ReplaceRng mint tartományt. Választhat bármilyen más betűt vagy szót a tartományok meghatározásához.
Kód:
Sub VBA_Replace () Eltávolítás Rng mint tartomány Dim InputRng as Range, ReplaceRng as Range End Sub
3. lépés: Most használja az xTitleId párbeszédpanelt, és adja meg a nevét. Itt neveztük „ VBA_Replace ” -nek.
Kód:
Sub VBA_Replace () Eltávolítás Rng mint tartomány Dim InputRng as Range, ReplaceRng as Range xTitleId = "VBA_Replace" End Sub
4. lépés: Most rendelje hozzá az Application.Selection with InputRng-t, ez lehetővé teszi a kiválasztott alkalmazás használatát a VBA-ban.
Kód:
Sub VBA_Replace () Eltávolítás Rng mint tartomány Dim InputRng as Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection End Sub
5. lépés: Most a következő sorba illesszen be egy 3 típusú InputBox-ot: Original range, xTitleId és InputRng. Az Eredeti tartomány azoknak a tárgyaknak a felsorolása, amelyekre szükség van a cserére. A felsorolás a B. oszlopban található. Az InputRng az E és az F oszlop adattáblázata.
Kód:
Sub VBA_Replace () Eltávolítás Rng As Range Eltávolítás InputRng As Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Befejezés Sub
6. lépés: Most a következő sorban rendeljen hozzá egy bemenetet a ReplaceRng-hoz, és ehhez válassza a Cserélje ki a tartományt oszlopot. A többi ugyanaz.
Kód:
Sub VBA_Replace () Eltávolítás Rng As Range Eltávolítás InputRng As Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Set ReplaceRng = Application.InputBox ("Cseretartomány:", xTitleId, Típus: = 8) Vége Sub
7. lépés: Most az Application.Screenupdating funkciót fogjuk használni, mivel a név szerint frissítésre kerül, ha HAMOS.
Kód:
Sub VBA_Replace () Eltávolítás Rng As Range Eltávolítás InputRng As Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Set ReplaceRng = Application.InputBox ("Cseretartomány:", xTitleId, Típus: = 8) Application.ScreenUpdating = False End Sub
8. lépés: Helyezze be a For-Next hurkot . És minden Rng tartományra cserélje ki a ReplaceRng oszlop értékeit.
Kód:
Sub VBA_Replace () Eltávolítás Rng As Range Eltávolítás InputRng As Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Állítsa be a ReplaceRng = Application.InputBox ("Cseretartomány:", xTitleId, Típus: = 8) Application.ScreenUpdating = Hamis minden egyes csengőhanghoz ReplaceRng.Columns (1) .Cells Next End Sub
9. lépés: Végül cserélje le az InputRng-et az Rng-ben jelen lévő értékekre az egész lapról.
Kód:
Sub VBA_Replace () Eltávolítás Rng As Range Eltávolítás InputRng As Range, ReplaceRng as Range xTitleId = "VBA_Replace" Set InputRng = Application.Selection Set InputRng = Application.InputBox ("Original Range", xTitleId, InputRng.Address, Type: = 8) Beállítása ReplaceRng = Application.InputBox ("Csere tartomány:", xTitleId, Típus: = 8) Application.ScreenUpdating = Hamis minden egyes csengőhanghoz A ReplaceRng.Columns (1) .Cells InputRng.Csere mit: = Rng.Value, csere: = Rng.Offset (0, 1) .Érték, Lookat: = xlWhole Next End Sub
10. lépés: Ha elkészült, fordítsa le és futtassa a kódot. Megkapjuk a párbeszédpanelt a VBA_Replace néven. Innentől válassza ki a tantárgyak listáját, amelyeket eredeti tartományként cserélnünk kell, és kattintson az OK gombra. Akkor egy másik dobozt kapunk onnan, majd válassza a Csere tartományt E2-től F8-ig . Ez a táblázat tartalmazza azokat az adatokat, amelyeket ki kell cserélni, és kattintson az OK gombra.
Az adatokat a B oszlopban kapjuk, amelyet az F oszlopban szereplő adatok helyettesítenek sorozatszámmal.
Áttekintésként az E oszlop egyedi tárgyneveket tartalmaz. Az F oszlop tárgyneveket tartalmaz sorszámmal. Tehát ezekkel a adatokkal a B. oszlop helyébe az F oszlop adatai lépnek.
A VBA csere funkció előnyei
- Egyszerre több szót vagy mondatot cserélhetünk.
- Nincs olyan szavak vagy szövegek korlátozása, amelyeket nem tudunk helyettesíteni.
- A csere szintaxisa a VBA-ban ugyanolyan egyszerű, mint az SumIf függvény használata az Excel-ben.
- A VBA csere az 1. példában látható módon a legegyszerűbb módszer.
Dolgok, amikre emlékezni kell
- Mentés Marcoként Engedélyezve az Excel alkalmazást, hogy elkerülje az írott kód elvesztését a VBA-ban.
- A méreteket mindig úgy mérlegelje, hogy hozzáadott értéket teremtsen, miközben kiválasztjuk a kódot.
- Ügyeljen arra, hogy a 2. példa szerint válassza ki a teljes laptartományt, ha az eredmény elérésére korlátozódik. Vagy meghatározhatja és kiválaszthatja a Csere funkció alatt használt korlátozott cellatartományt.
Ajánlott cikkek
Ez egy útmutató a VBA csere funkciójához. Itt tárgyaltuk a VBA Replace és az Excel VBA Replace Function használatának módját, valamint a gyakorlati példákat és a letölthető Excel sablont. Megnézheti más javasolt cikkeinket -
- Komplett oktatóanyagok a VBA hurkokon
- Hogyan kell használni a VBA csinálni, míg a hurok?
- Mi az a VBA számformátum?
- Hogyan lehet létrehozni a VBA MsgBox-ot?