Tartalomjegyzék
Ha azt keresi, hogyan lehet szöveg cseréje egy karakterláncban az Excel használatával VBA , akkor ezt a cikket hasznosnak fogja találni. Egy bizonyos szövegrész cseréje sok időt takaríthat meg a szövegrészek újbóli begépelésével. Tehát, nézzük a fő cikket, hogy megismerjük a cserével kapcsolatos részleteket.
Munkafüzet letöltése
Szöveg cseréje String.xlsm-ben5 mód a szöveg cseréjére a karakterláncban az Excel VBA használatával
Itt van a következő adatkészlet, amely az alkalmazottak néhány rekordját tartalmazza az e-mail azonosítóikkal együtt. A feladatunk az, hogy a régi domain neveket az újakkal helyettesítsük. A következő módszerekben ezzel az adatkészlettel és néhány véletlenszerű szöveges karakterlánccal fogunk dolgozni, hogy a kívánt szöveget a következővel helyettesítsük. VBA kódok.
Használtuk Microsoft Excel 365 változatot itt, bármely más változatot is használhatsz, ha az neked megfelel.
Módszer-01: Szöveg cseréje egy véletlen karakterlánc n-edik pozíciójától kezdve
Itt a szöveget egy véletlenszerű szöveges karakterláncban fogjuk helyettesíteni különböző kezdőpozíciókban.
Step-01 :
➤ Menj a Fejlesztő Tab>> Kód: Csoport>> Visual Basic Opció.
Ezután a Visual Basic szerkesztő megnyílik.
➤ Menj a Beillesztés Tab>> Modul Opció.
Ezután egy Modul létrejön.
Step-02 :
➤ Írja a következő kódot
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1) MsgBox updated_str End Sub
Itt kijelentettük, hogy full_txt_str és updated_str mint String majd hozzárendelték full_txt_str egy véletlenszerű szöveges karakterláncra- "Száz autó Ötven autó Tíz autó" . Akkor a VBA REPLACE funkció a Autók része ennek a véletlenszerű karakterláncnak a Kerékpárok és 1 itt arra szolgál, hogy a cserét a 1 Végül ezt az új szöveges karakterláncot hozzárendeltük a updated_str és egy üzenőmezővel ( MsgBox ), látni fogjuk az eredményt.
➤ Sajtó F5 .
Akkor egy üzenőmező megjelenik az új szövegrészlet a kicserélt szöveggel. Kerékpárok .
➤ A cserefolyamat elvégzéséhez a második példányban a Autók használja a következő kódot.
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 14) MsgBox updated_str End Sub
Itt a kiindulási helyzetet úgy használtuk, mint 14 mert azt akarjuk, hogy a karakterláncnak az a része, ami a Száz autó és cserélje ki a Autók itt.
➤ Miután futó a kódot, a következő lesz üzenőmező a szöveges karakterlánc a szövegből kiindulva Ötven és a Kerékpárok a Autók .
➤ Ahhoz, hogy csak a karakterlánc utolsó része legyen meg, a következő kódot alkalmazzuk.
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 25) MsgBox updated_str End Sub
Itt a kiindulási helyzetet úgy használtuk, mint 25 mert azt akarjuk, hogy a karakterláncnak az a része, ami a Ötven autó és cserélje ki a Autók a címen Kerékpárok itt.
Végül, lesz egy üzenőmező a karakterlánc kívánt részével, amely a következővel van helyettesítve Kerékpárok .
További információ: Excel VBA: Karakterek cseréje a karakterláncban pozíció szerint (4 hatékony módszer)
Módszer-02: Szöveg helyettesítése egy véletlen karakterlánc n-edik előfordulásának Excel VBA használatával
Ebben a szakaszban egy szöveget fogunk helyettesíteni egy véletlenszerű karakterláncban különböző számú előfordulásra egy VBA kód.
Lépések :
➤ Follow Step-01 a Módszer-1 .
➤ Írja be a következő kódot.
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 1) MsgBox updated_str End Sub
Itt kijelentettük, hogy full_txt_str és updated_str mint String majd hozzárendelték full_txt_str egy véletlenszerű szöveges karakterláncra- "Száz autó Ötven autó Tíz autó" Ezután a REPLACE funkció a Autók része ennek a véletlenszerű karakterláncnak a Kerékpárok , 1 itt arra szolgál, hogy a cserét a 1 és a végső 1 az előfordulások számának számlálására szolgál. A 1 mint a számlálószámot határozzuk meg az első helyettesítését Autók Végül ezt az új szöveges karakterláncot hozzárendeltük a updated_str és egy üzenőmezővel ( MsgBox ), látni fogjuk az eredményt.
➤ Sajtó F5 .
Ezután egy üzenőmező az új szöveggel jelenik meg Kerékpárok a első pozíció a Autók csak.
➤ Az első két példány helyettesítésére a Autók a címen Kerékpárok használja a következő kódot.
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 2) MsgBox updated_str End Sub
Tessék, 2 a számlálószámként a Autók a címen Kerékpárok .
A kód futtatása után az első két szöveg helyettesítését kapja meg. Autók a címen Kerékpárok .
➤ Alkalmazza a következő kódot a szöveg összes példányának helyettesítésére Autók .
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 3) MsgBox updated_str End Sub
Itt az utolsó argumentum a REPLACE funkció a 3 amely a számolási szám, amely az összes Autók a címen Kerékpárok a szöveges karakterláncban.
➤ Sajtó F5 .
Ezután a következőket fogjuk tartani üzenőmező a helyettesített szöveggel Kerékpárok a karakterláncban.
Hasonló olvasmányok
- Hogyan cserélje ki a szöveget az Excelben a Carriage Returnrel (4 sima megközelítés)
- Excel VBA: Szöveg keresése és cseréje a Word dokumentumban
- Hogyan cserélje ki a szöveget egy adott karakter után az Excelben (3 módszerek)
- A cella szövegének cseréje az Excel feltételei alapján (5 egyszerű módszer)
Módszer-03: Szöveg cseréje egy véletlenszerű karakterláncban InputBox segítségével
Itt egy véletlenszerű karakterlánc egy bizonyos szövegét fogjuk helyettesíteni egy olyan szöveggel, amelyet a felhasználó határoz meg a VBA InputBox funkció .
Lépések :
➤ Follow Step-01 a Módszer-1 .
➤ Írja be a következő kódot.
Sub sub substitution_of_text_3() Dim full_txt_str, new_txt, updated_str As String full_txt_str = "Száz autó Ötven autó Tíz autó" new_txt = InputBox("Írja le az új szöveget, amit helyettesíteni szeretne") updated_str = Replace(full_txt_str, "Cars", new_txt) MsgBox updated_str End Sub
Itt kijelentettük, hogy full_txt_str , new_txt , és updated_str mint String majd hozzárendelték full_txt_str egy véletlenszerű szöveges karakterláncra- "Száz autó Ötven autó Tíz autó" A felhasználó által meghatározott bevitel a szöveg helyettesítendő szövegeként a Autók a véletlenszerű karakterláncban, a InputBox funkció majd ezt az értéket hozzárendelte a new_txt . Akkor a REPLACE funkció a Autók része ennek a véletlenszerű karakterláncnak a new_txt Végül ezt az új szöveges karakterláncot hozzárendeltük a updated_str és egy üzenőmezővel ( MsgBox ), látni fogjuk az eredményt.
➤ Sajtó F5 .
Ezután egy Beviteli doboz jelenik meg, ahol megadhat bármilyen szövegrészt, amelyet az új karakterláncban szeretne szerepeltetni.
➤ Típus Kerékpárok vagy bármilyen más szöveget, majd nyomja meg a OK .
Végül a következő eredményt kapja az új szöveges karakterlánc új szövegével Kerékpárok a Autók .
További információ: Hogyan cserélje ki a szöveget az Excel-képletben (7 egyszerű módja)
Módszer-04: Szöveg cseréje egy karakterlánc-tartományban az Excel VBA segítségével
Itt helyettesítjük a gmail része az e-mail azonosítóknak a tartományokkal a Új tartomány oszlopot, és az új e-mail azonosítók összegyűjtéséhez egy új oszlopot illesztettünk be; Végleges e-mail azonosító .
Lépések :
➤ Follow Step-01 a Módszer-1 .
➤ Írja be a következő kódot.
Sub sub substitution_of_text_4() For i = 4 To 13 If InStr(1, Cells(i, 4).Value, "gmail")> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, "gmail", Cells(i, 5).Value) Else Cells(i, 6).Value = "" End If Next i End Sub
Itt a FOR ciklus a művelet végrehajtásához a 4. sor a címre. 13. sor . A segítségére van a IF-THEN utasítással ellenőriztük, hogy az e-mail azonosítók a D oszlop tartalmaznak "gmail" vagy sem, és ennek a kritériumnak a teljesítéséhez a "gmail" az e-mail azonosítók részének helyébe az új domainek lépnek, a E oszlop az új azonosítók létrehozásához a F oszlop Ellenkező esetben a megfelelő cellákban üres marad a F oszlop .
➤ Sajtó F5 .
Ezután az új e-mail azonosítókat a Végleges e-mail azonosító oszlop.
További információ: Excel VBA szöveg keresése és helyettesítése egy oszlopban (2 példa)
Módszer-05: Szöveghelyettesítés a karakterláncok tartományában felhasználói bevitellel a szöveg kereséséhez
A következő e-mail azonosítók helyettesíthetők az új domainekkel, és kijelentheti, hogy mit kell helyettesíteni az előző azonosítókban egy felhasználói bevitelt lehet használni a következő módszerrel.
Lépések :
➤ Follow Step-01 a Módszer-1 .
➤ Írja be a következő kódot.
Sub substitution_of_text_5() Dim partial_text As String partial_text = Application.InputBox("Enter the string to be replaced") For i = 4 To 13 If InStr(1, Cells(i, 4).Value, LCase(partial_text))> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, LCase(partial_text), Cells(i, 5).Value) Else Cells(i, 6).Value = "" End If Next i End Sub
Itt a következőket határoztuk meg partial_text mint String majd hozzárendeltük egy karakterlánchoz, amelyet a felhasználó ad meg a Beviteli doboz .
Ezt követően a FOR ciklus a művelet végrehajtásához a 4. sor a címre. 13. sor , és a IF-THEN utasítással ellenőriztük, hogy az e-mail azonosítók a D oszlop tartalmaznak "gmail" vagy sem. És ennek a kritériumnak a teljesítéséhez a "gmail" az e-mail azonosítók részének helyébe az új domainek lépnek, a E oszlop az új azonosítók létrehozásához a F oszlop Ellenkező esetben a megfelelő cellákban üres marad a F oszlop .
➤ Sajtó F5 .
Ezután lesz egy Beviteli doboz ahol be kell írni a szöveget, amit keresni akarunk az e-mail azonosítók között (itt beírtuk, hogy gmail ), majd nyomja meg a OK .
Végül, a frissített e-mail azonosítóinkat a Végleges e-mail azonosító oszlop.
További információ: Szöveg keresése és cseréje egy tartományban az Excel VBA-val (makró és UserForm)
Gyakorlati szekció
A saját magad általi gyakorláshoz biztosítottunk egy Gyakorlat szakasz az alábbi módon egy lapon, amelynek neve Gyakorlat Kérem, tegye meg egyedül.
Következtetés
Ebben a cikkben megpróbáltuk lefedni a szöveg cseréjének módjait egy karakterláncban az Excel használatával. VBA Remélem, hasznosnak találja majd. Ha bármilyen javaslata vagy kérdése van, nyugodtan ossza meg velünk a megjegyzés rovatban.