VBA Replace String - Cum se înlocuiește textul în șir folosind VBA?

Excel VBA Înlocuiește șirul

Înlocuiți este atât funcția Foaie de lucru, cât și funcția VBA. Această funcție ne ajută să înlocuim cuvântul specific din șir cu un alt șir. Funcționează similar cu funcția de înlocuire în VBA.

În timp ce vă ocupați de șirul de testare sau de valorile datelor text, este un lucru evident să înlocuiți sau să înlocuiți ceva cu altceva, să uniți două date de celule într-una sau să împărțiți o dată de celulă la mai multe lucruri. Toate acestea sunt sarcini obișnuite pe care le desfășurăm zi de zi la locul de muncă.

Deci, cum înlocuim un cuvânt din șir cu un alt cuvânt? De exemplu, dacă șirul este „India este o țară în curs de dezvoltare și India în țara asiatică” din acest șir, trebuie să înlocuim cuvântul „India” și să ne schimbăm în „Bharath”.

Acest lucru este posibil utilizând funcția Înlocuire. În acest articol, vă vom arăta cum să înlocuiți șirurile în codarea VBA.

Înlocuiți funcția

  • Expresie: Aceasta nu este altceva decât valoarea șirului original din care încercăm să înlocuim ceva cu ceva. De exemplu, mai jos este expresia șir - „India este o țară în curs de dezvoltare și India în țara asiatică”.
  • Găsiți șir: Care este șirul pe care încercăm să îl înlocuim. De exemplu, în șirul de expresii , încercăm să înlocuim cuvântul „India”.
  • Înlocuiți șirul: Care este șirul substitut cu care înlocuim șirul Găsiți ? Deci, în acest caz, încercăm să înlocuim cuvântul „India” cu „Bharath”.
  • (Start): Acesta este un parametru opțional. În șirul de mai sus (Expresie), avem două cuvinte, „India”, deci din ce poziție a Șirului de căutare, trebuie să începem procesul de înlocuire. De exemplu, dacă spunem 2, va începe să înlocuiască cuvântul „India” începând cu a doua poziție.
  • (Număr): Dacă șirul de căutare apare de mai multe ori în expresie, atunci câte cuvinte trebuie să înlocuim.

De exemplu, dacă cuvântul „India” apare de 5 ori și dacă furnizați numărul ca 3, atunci acesta va înlocui doar primele 3 cuvinte „India”.

Cum se înlocuiește textul în șir folosind VBA?

Exemplul nr. 1

Acum vom încerca să înlocuim cuvântul „India” cu „Bharath” din valoarea șirului de mai jos.

„India este o țară în curs de dezvoltare, iar India în țara asiatică.”

Mai întâi, porniți procedura macro Excel acum.

Cod:

Sub Înlocuire_Exemplu () Încheiere Sub

Definiți variabila VBA ca Șir.

Cod:

Sub Replace_Example () Dim NewString As String End Sub

În această variabilă, vom afișa o nouă valoare șir după ce înlocuim cuvântul „India” cu „Bharath”. Pentru această variabilă, deschideți funcția Înlocuire.

Primul argument al acestei funcții este „Expresie”, adică din care șir încercăm să înlocuim un cuvânt, deci copiați și lipiți șirul „India este o țară în curs de dezvoltare și India în țara asiatică”.

Următorul argument este „Găsește șirul”, adică ce cuvânt trebuie să înlocuim, adică „India”.

Următorul argument este „Înlocuiește șirul”, adică cu care șir trebuie să înlocuim cuvântul „India”, adică „Bharath”.

Ok, de acum, ignorați argumentele rămase. Acum arată rezultatul în caseta de mesaje.

Cod:

Sub Replace_Example () Dim NewString As String NewString = Înlocuiți („India este o țară în curs de dezvoltare și India este țara asiatică”, „India”, „Bharath”) MsgBox NewString End Sub

Să rulăm codul folosind tasta F5 sau manual și să vedem noul rezultat al șirului.

Ok, uită-te la rezultatul de mai sus. Oriunde am avut cuvântul „India”, acesta a fost înlocuit cu cuvântul „Bharath”.

Exemplul nr. 2

Acum vom vedea cum să folosim același cod cu variabile. Uită-te la codul de mai jos.

Cod:

Sub Replace_Example1 () Dim NewString As String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "India este o țară în curs de dezvoltare și India este țara asiatică" FindString = "India" ReplaceString = "Bharath" NewString = Replace (MyString , FindString, ReplaceString) MsgBox NewString End Sub

În codul de mai sus, am declarat trei variabile suplimentare.

Dim MyString As String Dim FindString As String Dim ReplaceString As String

Pentru aceste variabile, am atribuit valori. În loc să furnizăm șirul de expresie, Găsiți șirul și șirul de înlocuire, vom furniza numai variabile funcției Înlocuire.

Acest cod oferă, de asemenea, același rezultat, dar singura diferență este că am folosit variabile în locul furnizării directe de valori către funcție.

Exemplul nr. 3

Să presupunem că doriți să înlocuiți cuvântul „India” doar din a doua poziție, atunci trebuie să folosim parametrul funcției Înlocuire („Start”). Uitați-vă la codul de mai jos pentru informații.

Cod:

Sub Replace_Example2 () Dim NewString As String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "India este o țară în curs de dezvoltare și India este țara asiatică" FindString = "India" ReplaceString = "Bharath" NewString = Replace (MyString , FindString, ReplaceString, Start: = 34) MsgBox NewString End Sub

Numai un lucru în plus pe care l-am adăugat din codul anterior este parametrul „Start” ca 34. Acum rulați codul și vedeți rezultatul.

Acum putem vedea doar șirul după cel de-al 34- lea caracter al șirului cu „India” înlocuind cu „Bharath”.

Exemplul # 4

Now for an example, if we want to replace only the first occurrence of the word “India” with “Bharath,” then we need to use the (“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

  • Înlocuire este o familie de funcții șir în VBA.
  • În VBA, funcția de înlocuire înlocuiește toate cuvintele furnizate cu șirul înlocuit dacă parametrul de numărare nu este specificat.
  • Parametrul de start va șterge numărul de caractere furnizate și va afișa rezultatul rămas.

Articole interesante...