Excel VBA: Hvordan erstatte tekst i streng (5 effektive måter)

  • Dele Denne
Hugh West

Hvis du leter etter måter å erstatte tekst i en streng ved å bruke Excel VBA , vil du finne denne artikkelen nyttig. Å erstatte en bestemt tekstdel kan spare mye tid ved å skrive inn tekststrengene på nytt. Så la oss gå inn i hovedartikkelen for å vite detaljene om denne erstatningsoppgaven.

Last ned arbeidsbok

Erstatt tekst i String.xlsm

5 måter å erstatte tekst i streng ved å bruke Excel VBA

Her har vi følgende datasett som inneholder noen poster over de ansatte med deres e-post-ID. Vår oppgave er å erstatte de gamle domenenavnene med de nye. I de følgende metodene vil vi jobbe med dette datasettet sammen med noen tilfeldige tekststrenger for å erstatte ønsket tekst med VBA -koder.

Vi har brukt Microsoft Excel 365 -versjon her, du kan bruke alle andre versjoner etter eget ønske.

Metode-01: Erstatt tekst fra n-te plassering av en tilfeldig streng

Her vil vi erstatte tekst i en tilfeldig tekststreng for forskjellige startposisjoner.

Trinn-01 :

➤ Gå til Utvikler fanen >> Kode Gruppe >> Visual Basic Alternativ.

Deretter Visual Basic Editor åpnes.

➤ Gå til Sett inn fanen >> Modul Alternativ.

Deretter opprettes en modul .

Trinn-02 :

➤ Skriv følgendekode

9559

Her har vi erklært full_txt_str og updated_str som streng og deretter tildelt full_txt_str til en tilfeldig tekst string- «Hundre biler femti biler ti biler» . Deretter brukes VBA REPLACE-funksjonen til å erstatte Cars delen av denne tilfeldige strengen med Sykler og 1 brukes her for å starte erstatningen fra posisjon 1 i denne strengen. Til slutt har vi tilordnet denne nye tekststrengen til updated_str og med en meldingsboks ( MsgBox ) vil vi se resultatet.

➤ Trykk F5 .

Deretter vises en meldingsboks med den nye tekststrengen med den erstattede teksten Sykler .

➤ For å utføre erstatningsprosessen fra den andre forekomsten av Biler bruk følgende kode.

6758

Her har vi brukt startposisjonen som 14 fordi vi ønsker å ha delen av strengen etter Hundre biler og erstatte Biler her.

➤ Etter å kjørt koden, vil vi ha følgende meldingsboks med tekststrengen startende fra teksten Fifty og med Sykler i posisjonen Biler .

➤ For å ha bare den siste delen av denne strengen bruker vi følgende kode.

1322

Her har vi brukt startposisjonen som 25 fordi vi ønsker å ha delen av strengen etter Fifty Cars og erstatte Cars med Sykler her.

Til slutt vil vi ha en meldingsboks med ønsket del av strengen som erstattes med Sykler .

Les mer: Excel VBA: Replace Character in String by Position (4 Effective Ways)

Metode-02: Erstatt tekst for n-te forekomst av en tilfeldig streng ved å bruke Excel VBA

I denne delen vil vi erstatte en tekst i en tilfeldig streng for forskjellige antall forekomster med hjelpen av en VBA kode.

Trinn :

➤ Følg Trinn-01 av Metode-1 .

➤ Skriv inn følgende kode.

4589

Her har vi erklært full_txt_str og updated_str som String og deretter tildelt full_txt_str til en tilfeldig tekststreng- «Hundre biler femti biler ti biler» . Deretter brukes REPLACE-funksjonen til å erstatte Cars delen av denne tilfeldige strengen med Sykler , 1 brukes her for å starte erstatningen fra posisjon 1 i denne strengen, og den siste 1 er for å telle antall forekomster. Ved å bruke 1 som tellende tall definerer vi bare erstatningen for de første Bilene bare. Til slutt har vi tilordnet denne nye tekststrengen til updated_str og med enmeldingsboks ( MsgBox ) vi vil se resultatet.

➤ Trykk F5 .

Etterpå, en meldingsboks vises med den nye teksten Sykler i første posisjon av Biler bare.

➤ For å erstatte de to første forekomstene av Biler med Sykler bruk følgende kode.

8422

Her brukes 2 som tellenummer for å erstatte de to første forekomstene av Biler med Sykler .

Etter å ha kjørt koden vil du ha erstatningen for de to første tekstene Biler med Sykler .

➤ Bruk følgende kode for å erstatte alle forekomstene av teksten Biler .

8168

Her er det siste argumentet til REPLACE-funksjonen 3 som er tellende tall som indikerer utskifting av alle bilene med Sykler i tekststrengen.

➤ Trykk F5 .

Etterpå vil vi ha følgende meldingsboks med den erstattede teksten Sykler i strengen.

Lignende avlesninger

  • Hvordan erstatte tekst med vognretur i Excel (4 jevne tilnærminger)
  • Excel VBA: Hvordan finne og Erstatt tekst i Word-dokument
  • Hvordan erstatte tekst etter spesifikke tegn i Excel (3 metoder)
  • Erstatt tekst av enCelle basert på tilstand i Excel (5 enkle metoder)

Metode-03: Erstatt tekst i en tilfeldig streng med InputBox

Her vil vi erstatte en viss tekst av en tilfeldig streng med en tekst som vil bli definert av en bruker ved hjelp av VBA InputBox-funksjonen .

Trinn :

➤ Følg Trinn-01 av Metode-1 .

➤ Skriv inn følgende kode.

1434

Her har vi erklært full_txt_str , new_txt og updated_str som streng og deretter tildelt full_txt_str til en tilfeldig tekststreng- «Hundre biler Femti biler ti biler» . For å ha den brukerdefinerte inngangen som teksten som skal erstattes med Cars i den tilfeldige strengen, har vi brukt InputBox-funksjonen og deretter tildelt denne verdien til new_txt . Deretter brukes REPLACE-funksjonen for å erstatte Cars delen av denne tilfeldige strengen med new_txt . Til slutt har vi tilordnet denne nye tekststrengen til updated_str og med en meldingsboks ( MsgBox ) vil vi se resultatet.

➤ Trykk F5 .

Deretter vises en Inndataboks der du kan skrive inn hvilken som helst tekstdel du vil ha i den nye strengen.

➤ Skriv inn Sykler eller annen tekst du ønsker, og trykk deretter OK .

Til slutt vil du få følgende resultat med den nye tekststrengen med ny tekst Sykler iposisjonen til Biler .

Les mer: Hvordan erstatte tekst i Excel-formel (7 enkle måter)

Metode-04: Erstatt tekst i en rekke strenger med Excel VBA

Her vil vi erstatte gmail delen av e-post-ID-ene med domenene i Nytt domene -kolonnen, og for å samle de nye e-post-ID-ene har vi satt inn en ny kolonne; Endelig e-post-ID .

Trinn :

➤ Følg Trinn-01 av Method-1 .

➤ Skriv inn følgende kode.

6484

Her har vi brukt FOR loop for å utføre operasjonen fra Rad 4 til Rad 13 . Ved hjelp av IF-THEN -setningen har vi sjekket om e-post-IDene til Kolonne D inneholder “gmail” eller ikke, og for å oppfylle dette kriteriet vil "gmail" delen av e-post-ID-ene erstattes med de nye domenene i Kolonne E for å opprette de nye IDene i Kolonne F . Ellers vil du ha et tomt felt i de tilsvarende cellene i Kolonne F .

➤ Trykk F5 .

Deretter vil du ha de nye e-post-ID-ene i kolonnen Final Email Id .

Les mer: Excel VBA  for å finne og erstatte tekst i en kolonne (2 eksempler)

Metode-05: Erstatt tekst i en rekke strenger med brukerinndata for å finne tekst

Du kan erstatte følgende e-post-IDer mednye domener og erklære hva som skal erstattes i de tidligere IDene en brukerinndata kan brukes ved å følge denne metoden.

Trinn :

➤ Følg Trinn-01 av Metode-1 .

➤ Skriv inn følgende kode.

9627

Her har vi definert partiell_tekst som en streng og deretter tildelt den til en streng som vil bli gitt av en bruker gjennom inndataboksen .

Etterpå brukte vi FOR-løkken for å utføre operasjonen fra Rad 4 til Rad 13 , og bruker IF-THEN -utsagnet, sjekket vi om e-post-ID-ene til kolonne D inneholder “gmail” eller ikke. Og for å oppfylle dette kriteriet vil "gmail" delen av e-post-ID-ene erstattes med de nye domenene i Kolonne E for å opprette de nye ID-ene i Kolonne F . Ellers vil du ha en tom i de tilsvarende cellene i Kolonne F .

➤ Trykk F5 .

Deretter vil du ha en Inndataboks der du må skrive inn teksten du vil søke i utvalget av e-post-IDer (her har vi skrev inn gmail ) og trykk deretter OK .

Endelig har vi oppdaterte e-post-ID-er i finalen E-post-ID kolonne.

Les mer: Finn og erstatt en tekst i et område med Excel VBA (makro og brukerskjema)

Øvingsseksjon

For å gjøre praksis vedselv har vi gitt en Øving -seksjon som nedenfor i et ark kalt Øv . Vennligst gjør det selv.

Konklusjon

I denne artikkelen prøvde vi å dekke måtene å erstatte tekst i en streng ved å bruke Excel VBA . Håper du finner det nyttig. Hvis du har forslag eller spørsmål, del dem gjerne i kommentarfeltet.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.