VBA pakeisti eilutę | Kaip pakeisti tekstą eilutėje naudojant VBA?

„Excel VBA“ pakeiskite eilutę

Pakeisti yra ir darbalapio, ir VBA funkcija. Ši funkcija padeda pakeisti konkretų žodį iš eilutės kita eilute. Jis veikia panašiai kaip VBA funkcija Pavaduojanti.

Kalbant apie testo eilutės ar teksto duomenų reikšmes, akivaizdu, kad reikia kažką pakeisti ar pakeisti kuo nors kitu, sujungiant du langelių duomenis į vieną arba padalijant vieno langelio duomenis į kelis dalykus. Tai visos įprastos užduotys, kurias kasdien atliekame savo darbo vietoje.

Taigi, kaip pakeisti vieną žodį eilutėje kitu žodžiu? Pavyzdžiui, jei eilutė yra „Indija yra besivystanti šalis, o Indija - Azijos šalyje“, iš šios eilutės turime pakeisti žodį „Indija“ ir pakeisti į „Bharath“.

Tai įmanoma naudojant funkciją Pakeisti. Šiame straipsnyje mes parodysime, kaip pakeisti VBA kodavimo eilutes.

Pakeiskite funkciją

  • Išraiška: tai yra ne kas kita, o originali eilutės reikšmė, iš kurios bandome ką nors pakeisti. Toliau pateiktame pavyzdyje yra posakio eilutė - „Indija yra besivystanti šalis, o Indija - Azijos šalyje“.
  • Raskite eilutę: kokią eilutę bandome pakeisti. Pavyzdžiui, „ Expression“ eilutėje bandome pakeisti žodį „India“.
  • Keisti eilutę: Kuo pakeičiama eilutė, kuria mes pakeičiame eilutę „ Rasti“ ? Taigi šiuo atveju mes bandome pakeisti žodį „Indija“ žodžiu „Bharath“.
  • [Pradėti]: Tai pasirenkamas parametras. Pirmiau pateiktoje eilutėje (Išraiška) mes turime du žodžius „Indija“, taigi iš kurios „ Raskite“ eilutės pozicijos turime pradėti pakeitimo procesą. Pavyzdžiui, jei sakysime 2, jis pradės pakeisti žodį „Indija“ nuo antrosios pozicijos.
  • [Count]: Jei išraiškos eilutė kelis kartus rodoma išraiškoje, kiek žodžių turime pakeisti.

Pvz., Jei žodis „Indija“ pasirodys 5 kartus ir jei skaičių pateiksite kaip 3, jis pakeis tik pirmuosius 3 žodžius „Indija“.

Kaip pakeisti tekstą eilutėje naudojant VBA?

Šį „VBA Replace String Excel“ šabloną galite atsisiųsti čia - VBA Replace String Excel “šabloną

1 pavyzdys

Dabar mes bandysime pakeisti žodį „Indija“ žodžiu „Bharath“ iš žemiau pateiktos eilutės vertės.

„Indija yra besivystanti šalis, o Indija - Azijos šalyje“

Pirmiausia pradėkite „Excel“ makrokomandą dabar.

Kodas:

 Sub Replace_Pavyzdys () End Sub 

Apibrėžkite VBA kintamąjį kaip eilutę.

Kodas:

 Sub Replace_Example () pritemdyti NewString kaip eilutę End Sub 

Šiame kintamajame mes parodysime naują eilutės vertę pakeisdami žodį „India“ į „Bharath“. Šiam kintamajam atidarykite funkciją Pakeisti.

Pirmasis šios funkcijos argumentas yra „Išraiška“, ty iš kurios eilutės bandome pakeisti žodį, todėl nukopijuokite ir įklijuokite eilutę „Indija yra besivystanti šalis, o Indija - Azijos šalyje“.

Kitas argumentas yra „Rasti eilutę“, ty kurį žodį turime pakeisti, ty „Indija“.

Kitas argumentas yra „Pakeisti eilutę“, ty kuria eilute turime pakeisti žodį „Indija“, ty „Bharath“.

Gerai, nuo šiol nepaisykite likusių argumentų. Dabar parodykite rezultatą pranešimų laukelyje.

Kodas:

 Sub Replace_Example () Dim NewString as String NewString = Replace („Indija yra besivystanti šalis, o Indija - Azijos šalis“, „Indija“, „Bharath“) „MsgBox NewString End Sub“ 

Paleiskime kodą naudodami klavišą F5 arba rankiniu būdu ir pamatysime naują eilutės rezultatą.

Gerai, pažvelkite į aukščiau pateiktą rezultatą visur, kur mes turėjome žodį „Indija“, jis buvo pakeistas žodžiu „Bharath“.

2 pavyzdys

Dabar pamatysime, kaip naudoti tą patį kodą su kintamaisiais. Pažvelkite į žemiau esantį kodą.

Kodas:

 Sub Replace_Example1 () Dim NewString as String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "Indija yra besivystanti šalis, o Indija yra Azijos šalis" FindString = "India" ReplaceString = "Bharath" NewString = Pakeisti (MyString , „FindString“, „ReplaceString“) „MsgBox NewString End Sub“ 

Pirmiau pateiktame kode aš paskelbiau papildomus tris kintamuosius.

 Mano MyString kaip eilutė Dim FindString kaip eilutė Dim ReplaceString kaip eilutė 

Šiems kintamiesiems aš priskyriau reikšmes, užuot pateikę išraiškos eilutę, raskite eilutę ir pakeisdami eilutę, mes tieksime tik kintamąjį funkcijai Pakeisti.

Šis kodas taip pat duoda tą patį rezultatą, tačiau vienintelis skirtumas yra tas, kad mes naudojome kintamuosius, o ne tiesiogiai teikėme reikšmes funkcijai.

3 pavyzdys

Tarkime, kad norite pakeisti žodį „Indija“ tik iš antros pozicijos, tada turime naudoti funkcijos Pakeisti parametrą [„Pradėti“]. Informacijos ieškokite žemiau esančiame kode.

Kodas:

 Sub Replace_Example2 () Dim NewString as String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "Indija yra besivystanti šalis, o Indija yra Azijos šalis" FindString = "India" ReplaceString = "Bharath" NewString = Pakeisti (MyString , „FindString“, „ReplaceString“, pradžia: = 34) „MsgBox NewString End Sub“ 

Tik vienas papildomas dalykas, kurį pridėjome iš ankstesnio kodo, yra parametras „Pradėti“ kaip 34. Dabar paleiskite kodą ir pamatykite rezultatą.

Dabar galime pamatyti tik eilutę po 34-os eilutės simbolio su „India“, pakeičiančiu „Bharath“.

4 pavyzdys

Dabar, pavyzdžiui, jei norime pakeisti tik pirmą žodžio „India“ atvejį į „Bharath“, turime naudoti funkcijos „Pakeisti parametrą [„Count“] .

Žemiau yra jūsų kodas.

Kodas:

 Sub Replace_Example3 () Dim NewString as String Dim MyString As String Dim FindString As String Dim ReplaceString As String MyString = "Indija yra besivystanti šalis, o Indija yra Azijos šalis" FindString = "India" ReplaceString = "Bharath" NewString = Pakeisti (MyString , „FindString“, „ReplaceString“, skaičius: = 1) „MsgBox NewString End Sub“ 

Paleiskite kodą rankiniu būdu arba naudodami klavišą F5 ir pamatykite rezultatą.

Kaip matote aukščiau, tik pirmasis žodžio „Indija“ atsiradimas buvo pakeistas į „Bharath“, o antroji instancija išlieka ta pati.

Ką čia reikia atsiminti

  • „Replace“ yra eilutės funkcijų šeima VBA.
  • Jei VBA parametras nenurodytas, VBA funkcija pakeičia visus pateiktus žodžius pakeista eilute.
  • Pradžios parametras ištrins pateiktų simbolių skaičių ir parodys likusį rezultatą.

$config[zx-auto] not found$config[zx-overlay] not found