VBA zamjenski niz | Kako zamijeniti tekst u nizu pomoću VBA?

Excel VBA zamjenski niz

Zamjena je i funkcija radnog lista kao i funkcija VBA. Ova nam funkcija pomaže da određenu riječ iz niza zamijenimo drugim nizom. Djeluje slično funkciji Zamjena u VBA-u.

Dok se bavimo vrijednostima testnog niza ili tekstualnih podataka, očito je zamijeniti ili zamijeniti nešto nečim drugim, spajanjem dviju ćelijskih podataka u jednu ili dijeljenjem podataka jedne ćelije na više stvari. Sve su to uobičajeni zadaci koje svakodnevno radimo na svom radnom mjestu.

Dakle, kako zamjenjujemo jednu riječ u nizu drugom? Na primjer, ako je niz "Indija je zemlja u razvoju, a Indija u azijskoj zemlji", iz tog niza trebamo zamijeniti riječ "Indija" i promijenjena u "Bharath".

To je moguće pomoću funkcije Zamijeni. U ovom ćemo vam članku pokazati kako zamijeniti nizove u VBA kodiranju.

Zamijenite funkciju

  • Izraz: Ovo nije ništa drugo do izvorna vrijednost niza od koje pokušavamo nešto zamijeniti nečim. Primjer u nastavku je izraz izraza - "Indija je zemlja u razvoju, a Indija u azijskoj zemlji"
  • Pronađi niz: Koji je niz koji pokušavamo zamijeniti. Na primjer, u nizu Izraz pokušavamo zamijeniti riječ "Indija".
  • Zamijeni niz: Kojim zamjenskim nizom zamjenjujemo Pronađi niz ? Dakle, u ovom slučaju pokušavamo riječ "Indija" zamijeniti riječju "Bharath".
  • [Start]: Ovo je neobavezni parametar. U gornjem nizu (Izraz) imamo dvije riječi "Indija", pa s kojeg položaja niza za pronalaženje trebamo započeti postupak zamjene. Na primjer, ako kažemo 2, počet će zamjenjivati ​​riječ "Indija" od drugog položaja nadalje.
  • [Brojanje]: Ako se niz za pronalaženje pojavljuje više puta u izrazu, koliko riječi moramo zamijeniti.

Na primjer, ako se riječ "Indija" pojavi pet puta i ako broj navedete kao 3, ona će zamijeniti samo prve 3 riječi "Indija".

Kako zamijeniti tekst u nizu pomoću VBA?

Ovdje možete preuzeti ovaj VBA Zamijeni niz Excel predloška - VBA Zamijeni niz Excel predloga

Primjer # 1

Sada ćemo pokušati zamijeniti riječ "Indija" s "Bharath" iz donje vrijednosti niza.

"Indija je zemlja u razvoju, a Indija u azijskoj zemlji"

Prvo započnite postupak makronaredbe excel odmah.

Kodirati:

 Sub Zamijeni_Primjer () Kraj Sub 

Definirajte VBA varijablu kao String.

Kodirati:

 Sub Zamijeni_Primjer () Zatamni NewString kao kraj niza Sub 

U ovoj ćemo varijabli prikazati novu vrijednost niza nakon zamjene riječi "Indija" s "Bharath". Za ovu varijablu otvorite funkciju Zamijeni.

Prvi argument ove funkcije je „Izraz“, tj. Iz kojeg niza pokušavamo zamijeniti riječ, pa kopirajte i zalijepite niz „Indija je zemlja u razvoju, a Indija u azijskoj zemlji“.

Sljedeći je argument „Pronađi niz“, tj. Koju riječ trebamo zamijeniti, tj. „Indija“.

Sljedeći je argument „Zamijeni niz“, tj. Kojim nizom moramo zamijeniti riječ „Indija“, tj. „Bharath“.

Ok, od sada ignoriraj preostale argumente. Sada prikaži rezultat u okviru za poruku.

Kodirati:

 Sub Replace_Example () Dim NewString As String NewString = Zamijeni ("Indija je zemlja u razvoju, a Indija azijska zemlja", "Indija", "Bharath") MsgBox NewString End Sub 

Pokrenimo kôd pomoću tipke F5 ili ručno i vidjet ćemo novi rezultat niza.

Ok, pogledajte gornji rezultat gdje god smo imali riječ "Indija" zamijenjena je riječju "Bharath".

Primjer # 2

Sada ćemo vidjeti kako koristiti isti kod s varijablama. Pogledajte donji kod.

Kodirati:

 Sub Replace_Example1 () Zatamni NewString kao niz Zatamni MyString kao niz Zatamni FindString kao niz Zatamni ReplaceString kao niz MyString = "Indija je zemlja u razvoju, a Indija je azijska zemlja" FindString = "Indija" ReplaceString = "Bharath" NewString = Zamijeni (MyString , FindString, ReplaceString) MsgBox NewString End Sub 

U gornjem kodu proglasio sam dodatne tri varijable.

 Zatamni MyString kao niz Zatamni MyString kao niz Zatamni MyString kao niz 

Za ove sam varijable dodijelio vrijednosti, umjesto da pružimo String izraza, Pronađi niz i Zamijeni niz, funkciji Zamijeni isporučit ćemo samo varijablu.

Ovaj kod također daje isti rezultat, ali jedina je razlika što smo koristili varijable umjesto izravne opskrbe vrijednosti funkciji.

Primjer # 3

Assume you want to replace the word “India” only from the second position then we need to use the Replace function parameter [“Start”]. Look at the below code for your information.

Code:

 Sub Replace_Example2() Dim NewString As String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "India is a developing country and India is the Asian Country" FindString = "India" ReplaceString = "Bharath" NewString = Replace(MyString, FindString, ReplaceString, Start:=34) MsgBox NewString End Sub 

Only one extra thing we have added from the previous code is the “Start” parameter as 34. Now run the code and see the result.

Now we can see only string after the 34th character of the string with “India” replacing with “Bharath”.

Example #4

Now for an example, if we want to replace only the first occurrence of the word “India” to “Bharath” then we need to use [“Count”] parameter of the Replace function.

Below is the code for you.

Code:

 Sub Replace_Example3() Dim NewString As String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "India is a developing country and India is the Asian Country" FindString = "India" ReplaceString = "Bharath" NewString = Replace(MyString, FindString, ReplaceString, Count:=1) MsgBox NewString End Sub 

Run the code manually or through the F5 key and see the result.

As you can see above it has replaced only the first occurrence of the word “India” to “Bharath” and the second instance remains the same.

Things to Remember Here

  • Replace is a string function family in VBA.
  • In VBA, the replace function replaces all the supplied words with replaced string if the count parameter is not specified.
  • The start parameter will delete the number of characters supplied and show the remaining result.