Excel VBA: Hoe om teks in string te vervang (5 effektiewe maniere)

  • Deel Dit
Hugh West

As jy maniere soek om teks in 'n string te vervang met Excel VBA , dan sal jy hierdie artikel nuttig vind. Die vervanging van 'n sekere teksgedeelte kan baie tyd bespaar om die teksstringe weer in te tik. So, kom ons gaan na die hoofartikel om die besonderhede oor hierdie vervangingstaak te ken.

Laai werkboek af

Vervang teks in String.xlsm

5 maniere om teks in string te vervang met behulp van Excel VBA

Hier het ons die volgende datastel wat 'n paar rekords bevat van die werknemers met hul e-pos-ID's. Ons taak is om die ou domeinname met die nuwes te vervang. In die volgende metodes sal ons met hierdie datastel saam met 'n paar ewekansige teksstringe werk om gewenste teks met VBA -kodes te vervang.

Ons het Microsoft Excel 365 -weergawe hier, jy kan enige ander weergawes volgens jou gerief gebruik.

Metode-01: Vervang teks vanaf n-de posisie van 'n ewekansige string

Hier sal ons teks vervang in 'n ewekansige teksstring vir verskillende beginposisies.

Stap-01 :

➤ Gaan na die Ontwikkelaar oortjie >> Kode Groep >> Visual Basic Opsie.

Dan, die Visual Basic Editor sal oopmaak.

➤ Gaan na die Voeg in oortjie >> Module Opsie.

Daarna sal 'n Module geskep word.

Stap-02 :

➤ Skryf die volgendekode

7758

Hier het ons full_txt_str en updated_str as String verklaar en dan full_txt_str aan 'n ewekansige teks toegewys string- "Honderd Motors Vyftig Motors Tien Motors" . Dan word die VBA VERVANG funksie gebruik om die Kars deel van hierdie ewekansige string te vervang met Fietse en 1 word hier gebruik om die vervanging vanaf posisie 1 van hierdie string te begin. Laastens het ons hierdie nuwe teksstring aan updated_str toegewys en met 'n boodskapkassie ( MsgBox ) sal ons die resultaat sien.

➤ Druk F5 .

Dan sal 'n boodskapblokkie verskyn met die nuwe teksstring met die vervangde teks Fietse .

➤ Om die vervangingsproses te doen vanaf die tweede instansie van Motors gebruik die volgende kode.

6280

Hier het ons die beginposisie gebruik as 14 omdat ons die deel van die string na Honderd Motors wil hê en die <1 wil vervang> Motors hier.

➤ Nadat die kode gehardloop is , sal ons die volgende boodskapkas hê met die teksstring begin van die teks Vyftig en met Fietse in die posisie van Motors .

➤ Om slegs die laaste gedeelte van hierdie string te hê, pas ons die volgende kode toe.

2900

Hier het ons die beginposisie as 25 gebruik omdat ons die deel van die tou na Vyftig karre wil hê en die motors met fietse hier.

Uiteindelik sal ons 'n boodskapkas hê met die gewenste deel van die string wat vervang word met Fietse .

Lees meer: ​​Excel VBA: Vervang karakter in string volgens posisie (4 effektiewe maniere)

Metode-02: Vervang teks vir n-de voorkoms van 'n ewekansige string deur gebruik te maak van Excel VBA

In hierdie afdeling sal ons 'n teks in 'n ewekansige string vervang vir verskillende aantal gevalle met die hulp van 'n VBA kode.

Stappe :

➤ Volg Stap-01 van Metode-1 .

➤ Tik die volgende kode.

4213

Hier het ons full_txt_str en updated_str as String verklaar en dan full_txt_str aan 'n ewekansige teksstring- "Honderd Motors Vyftig Motors Tien Motors" toegewys. Daarna word die REPLACE-funksie gebruik om die Motors deel van hierdie ewekansige string te vervang met Fietse , 1 word hier gebruik om die vervanging vanaf posisie 1 van hierdie string te begin, en die finale 1 is vir die tel van die aantal voorvalle. Deur 1 as die telnommer te gebruik, definieer ons die vervanging van slegs die eerste Motors . Ten slotte het ons hierdie nuwe teksstring aan updated_str toegewys en met 'nboodskap boks ( MsgBox ) ons sal die resultaat sien.

➤ Druk F5 .

Daarna, 'n boodskapblokkie sal verskyn met die nuwe teks Fietse in die eerste posisie van Motors slegs.

➤ Vir die vervanging van die eerste twee gevalle van Motors met Fietse gebruik die volgende kode.

4749

Hier word 2 gebruik as die telnommer om die eerste twee gevalle van Motors <2 te vervang>met Fietse .

Nadat jy die kode uitgevoer het, sal jy die vervanging van die eerste twee tekste hê Motors met fietse .

➤ Pas die volgende kode toe om al die gevalle te vervang van die teks Kars .

7894

Hier is die laaste argument van die VERVANG funksie 3 wat die telnommer wat die vervanging van al die Motors met Fietse in die teksstring aandui.

➤ Druk F5 .

Daarna sal ons het die volgende boodskapblokkie met die vervangde teks Fietse in die string.

Soortgelyke lesings

  • Hoe om teks met koevertoer in Excel te vervang (4 gladde benaderings)
  • Excel VBA: Hoe om te vind en Vervang teks in Word-dokument
  • Hoe om teks na spesifieke karakter in Excel te vervang (3 metodes)
  • Vervang teks van 'nSel gebaseer op toestand in Excel (5 maklike metodes)

Metode-03: Vervang teks in 'n ewekansige string met invoerkas

Hier sal ons 'n sekere teks van 'n ewekansige string met 'n teks wat deur 'n gebruiker gedefinieer sal word met behulp van die VBA InputBox-funksie .

Stappe :

➤ Volg Stap-01 van Metode-1 .

➤ Tik die volgende kode in.

1642

Hier het ons verklaar full_txt_str , new_txt en updated_str as String en dan full_txt_str aan 'n ewekansige teksstring-<9 toegewys> "Honderd Motors Vyftig Motors Tien Motors" . Om die gebruiker-gedefinieerde invoer te hê as die teks wat vervang moet word met die Cars in die ewekansige string, het ons die InputBox-funksie gebruik en dan hierdie waarde toegeken na new_txt . Dan word die REPLACE funksie gebruik om die Cars deel van hierdie ewekansige string te vervang met new_txt . Ten slotte het ons hierdie nuwe teksstring aan updated_str toegewys en met 'n boodskapkassie ( MsgBox ) sal ons die resultaat sien.

➤ Druk F5 .

Daarna sal 'n Invoerkassie verskyn waar jy enige teksgedeelte wat jy in die nuwe string wil hê, kan invoer.

➤ Tik Fietse of enige ander teks wat jy wil hê en druk dan OK .

Uiteindelik sal u het die volgende resultaat met die nuwe teksstring met nuwe teks Fietse indie posisie van Motors .

Lees meer: ​​Hoe om teks in Excel-formule te vervang (7 maklike maniere)

Metode-04: Vervang teks in 'n reeks stringe met Excel VBA

Hier sal ons die gmail deel van die e-pos-ID's met die domeine in die Nuwe Domein -kolom, en om die nuwe e-pos-ID's te versamel, het ons 'n nuwe kolom ingevoeg; Finale e-pos-ID .

Stappe :

➤ Volg Stap-01 van Metode-1 .

➤ Tik die volgende kode.

5837

Hier het ons die VIR lus gebruik om die bewerking vanaf Ry 4 tot Ry 13 . Met behulp van die IF-THEN -stelling het ons gekyk of die e-pos-ID's van Kolom D “gmail” <10 bevat> of nie, en om aan hierdie kriterium te voldoen, sal die “gmail” gedeelte van die e-pos-ID's vervang word met die nuwe domeine van Kolom E om die nuwe ID's in Kolom F te skep. Andersins sal jy 'n spasie hê in die ooreenstemmende selle van Kolom F .

➤ Druk F5 .

Dan sal jy die nuwe e-pos-ID's in die Finale E-pos-ID kolom hê.

Lees meer: Excel VBA  om teks in 'n kolom te vind en te vervang (2 voorbeelde)

Metode-05: Vervang teks in 'n reeks stringe met gebruikersinvoer om teks te vind

Jy kan die vervang volgende e-pos ID's met dienuwe domeine en verklaar wat om te vervang in die vorige ID's 'n gebruikerinvoer kan gebruik word deur hierdie metode te volg.

Stappe :

➤ Volg Stap-01 van Metode-1 .

➤ Tik die volgende kode in.

1138

Hier het ons gedefinieer gedeeltelike_teks as 'n String en dit dan aan 'n string toegewys wat deur 'n gebruiker deur die Invoerkas gegee sal word.

Daarna het ons die VIR lus gebruik om die bewerking van Ry 4 na Ry 13 uit te voer, en gebruik die IF-DAN -stelling, het ons gekyk of die e-pos-ID's van Kolom D “gmail” bevat nie. En om aan hierdie kriterium te voldoen, sal die “gmail” gedeelte van die e-pos-ID's vervang word met die nuwe domeine van Kolom E om te skep die nuwe ID's in Kolom F . Andersins sal jy 'n spasie hê in die ooreenstemmende selle van Kolom F .

➤ Druk F5 .

Daarna sal jy 'n Invoerkassie hê waar jy die teks wat jy wil soek in die reeks e-pos-ID's moet tik (hier het ons het gmail ingevoer) en druk dan OK .

Uiteindelik het ons ons opgedateerde e-pos-ID's in die Finale E-pos-ID kolom.

Lees meer: ​​Soek en vervang 'n teks in 'n reeks met Excel VBA (makro en gebruikersvorm)

Oefenafdeling

Vir oefening deurself het ons 'n Oefening -afdeling soos hieronder verskaf in 'n blad met die naam Oefening . Doen dit asseblief self.

Gevolgtrekking

In hierdie artikel het ons probeer om die maniere te dek om teks in 'n string te vervang met Excel VBA . Hoop jy sal dit nuttig vind. As jy enige voorstelle of vrae het, deel dit gerus in die kommentaarafdeling.

Hugh West is 'n hoogs ervare Excel-afrigter en ontleder met meer as 10 jaar ondervinding in die bedryf. Hy het 'n Baccalaureusgraad in Rekeningkunde en Finansies en 'n Meestersgraad in Besigheidsadministrasie. Hugh het 'n passie vir onderrig en het 'n unieke onderrigbenadering ontwikkel wat maklik is om te volg en te verstaan. Sy kundige kennis van Excel het duisende studente en professionele persone wêreldwyd gehelp om hul vaardighede te verbeter en uit te blink in hul loopbane. Deur sy blog deel Hugh sy kennis met die wêreld, en bied gratis Excel-tutoriale en aanlyn opleiding aan om individue en besighede te help om hul volle potensiaal te bereik.