VBA aizstāt virkni | Kā aizstāt tekstu virknē, izmantojot VBA?

Excel VBA aizstāt virkni

Aizstāt ir gan darblapas funkcija, gan arī VBA funkcija. Šī funkcija palīdz mums aizstāt konkrēto vārdu no virknes ar citu virkni. Tas darbojas līdzīgi funkcijai Aizstāšana VBA.

Neskatoties uz testa virknes vai teksta datu vērtībām, ir acīmredzami kaut ko aizstāt vai aizstāt ar kaut ko citu, apvienojot divus šūnu datus vienā vai sadalot vienu šūnu datus vairākās lietās. Tie ir visi kopīgie uzdevumi, kurus mēs katru dienu veicam savā darba vietā.

Tātad, kā mēs aizstājam vienu virknes vārdu ar citu vārdu? Piemēram, ja virkne ir “Indija ir jaunattīstības valsts un Indija Āzijas valstī”, no šīs virknes mums jāaizstāj vārds “Indija” un jāmaina uz “Bharath”.

Tas ir iespējams, izmantojot funkciju Aizstāt. Šajā rakstā mēs parādīsim, kā aizstāt virknes VBA kodēšanā.

Aizstāt funkciju

  • Izteiksme: tas nav nekas cits kā sākotnējā virknes vērtība, no kuras mēs cenšamies kaut ko aizstāt ar kaut ko. Tālāk sniegtajā piemērā ir izteiksmes virkne - “Indija ir jaunattīstības valsts un Indija Āzijas valstī”.
  • Atrast virkni: kāda ir virkne, kuru mēs cenšamies nomainīt. Piemēram, virknē Expression mēs mēģinām aizstāt vārdu “India”.
  • Aizstāt virkni: ar ko aizstājam virkni, ar kuru mēs aizstājam virkni Atrast ? Tātad šajā gadījumā mēs cenšamies vārdu “Indija” aizstāt ar “Bharath”.
  • [Sākt]: Šis ir izvēles parametrs. Iepriekš minētajā virknē (izteiksme) mums ir divi vārdi “Indija”, tāpēc no kuras meklēšanas virknes pozīcijas mums jāsāk nomaiņas process. Piemēram, ja mēs sakām 2, tas sāks aizstāt vārdu “Indija”, sākot no otrās pozīcijas.
  • [Count]: Ja meklēšanas virkne izteiksmē parādās vairākas reizes, tad cik vārdu mums ir jāaizstāj.

Piemēram, ja vārds “Indija” parādās 5 reizes un ja skaitli norādāt kā 3, tas aizstās tikai pirmos 3 vārdus “Indija”.

Kā aizstāt tekstu virknē, izmantojot VBA?

Šo VBA Replace String Excel Template varat lejupielādēt šeit - VBA Replace String Excel Template

1. piemērs

Tagad mēs mēģināsim aizstāt vārdu “Indija” ar “Bharath” no zemāk esošās virknes vērtības.

“Indija ir jaunattīstības valsts un Indija Āzijas valstī”

Vispirms sāciet Excel makro procedūru tūlīt.

Kods:

 Sub Replace_Example () End Sub 

Definējiet VBA mainīgo kā virkni.

Kods:

 Sub Replace_Example () Dim NewString kā virknes beigu apakšsadaļa 

Šajā mainīgajā mēs parādīsim jaunu virknes vērtību pēc vārda “India” aizstāšanas ar “Bharath”. Šim mainīgajam atveriet funkciju Aizstāt.

Pirmais šīs funkcijas arguments ir “izteiksme”, ti, no kuras virknes mēs mēģinām aizstāt vārdu, tāpēc kopējiet un ielīmējiet virkni “Indija ir jaunattīstības valsts un Indija Āzijas valstī”.

Nākamais arguments ir “Atrast virkni”, ti, kurš vārds mums jāaizstāj, ti, “Indija”.

Nākamais arguments ir “Aizstāt virkni”, ti, ar kuru virkni mums jāaizstāj vārds “Indija”, ti, “Bharath”.

Labi, tagad ignorējiet atlikušos argumentus. Tagad parādiet rezultātu ziņojumu lodziņā.

Kods:

 Sub Replace_Example () Dim NewString kā virkne NewString = Replace ("Indija ir jaunattīstības valsts un Indija ir Āzijas valsts", "Indija", "Bharath") MsgBox NewString beigu apakšdaļa 

Palaidīsim kodu, izmantojot F5 taustiņu vai manuāli, un redzēsim jauno virknes rezultātu.

Labi, apskatiet iepriekš minēto rezultātu visur, kur mums bija vārds “Indija”, tas ir aizstāts ar vārdu “Bharath”.

2. piemērs

Tagad mēs redzēsim, kā to pašu kodu izmantot ar mainīgajiem. Apskatiet zemāk esošo kodu.

Kods:

 Sub Replace_Example1 () Dim NewString kā virkne Dim MyString kā virkne Dim FindString kā virkne Dim ReplaceString As String MyString = "Indija ir jaunattīstības valsts, un Indija ir Āzijas valsts" FindString = "India" ReplaceString = "Bharath" NewString = Aizstāt (MyString , FindString, ReplaceString) MsgBox NewString End Sub 

Iepriekš minētajā kodā esmu deklarējis papildu trīs mainīgos.

 Dim MyString kā virkne Dim FindString kā virkne Dim ReplaceString kā virkne 

Šiem mainīgajiem esmu piešķīris vērtības, tā vietā, lai piegādātu izteiksmes virkni, atrast virkni un aizstāt virkni, mēs piegādāsim tikai mainīgo funkcijai Aizstāt.

Šis kods dod arī tādu pašu rezultātu, bet vienīgā atšķirība ir tā, ka mēs esam izmantojuši mainīgos, nevis funkciju tiešo vērtību piegādi.

3. piemērs

Pieņemsim, ka vārdu “Indija” vēlaties aizstāt tikai no otrās pozīcijas, tad mums jāizmanto funkcijas Aizstāt parametrs [“Sākt”]. Lai iegūtu informāciju, skatiet zemāk esošo kodu.

Kods:

 Sub Replace_Example2 () Dim NewString kā virkne Dim MyString kā virkne Dim FindString kā virkne Dim ReplaceString As String MyString = "Indija ir jaunattīstības valsts, un Indija ir Āzijas valsts" FindString = "India" ReplaceString = "Bharath" NewString = Aizstāt (MyString , FindString, ReplaceString, Start: = 34) MsgBox NewString End Sub 

Tikai viena papildu lieta, ko esam pievienojuši no iepriekšējā koda, ir parametrs “Start” kā 34. Tagad palaidiet kodu un skatiet rezultātu.

Tagad mēs varam redzēt tikai virkni aiz virknes 34. rakstzīmes ar “India”, kas aizstāta ar “Bharath”.

4. piemērs

Tagad, piemēram, ja mēs vēlamies aizstāt tikai pirmo vārda “India” sastopamību ar “Bharath”, mums jāizmanto funkcijas Replace parametrs [“Count”] .

Zemāk ir jūsu kods.

Kods:

 Sub Replace_Example3 () Dim NewString kā virkne Dim MyString kā virkne Dim FindString kā virkne Dim ReplaceString As String MyString = "Indija ir jaunattīstības valsts, un Indija ir Āzijas valsts" FindString = "India" ReplaceString = "Bharath" NewString = Aizstāt (MyString , FindString, ReplaceString, Count: = 1) MsgBox NewString End Sub 

Palaidiet kodu manuāli vai caur F5 taustiņu un skatiet rezultātu.

Kā redzat iepriekš, tikai pirmais vārda “India” gadījums ir aizstāts ar “Bharath”, bet otrais gadījums paliek nemainīgs.

Lietas, kuras šeit jāatceras

  • Replace ir virknes funkciju saime VBA.
  • VBA gadījumā aizstāšanas funkcija aizstāj visus piegādātos vārdus ar aizstātu virkni, ja skaitītāja parametrs nav norādīts.
  • Sākuma parametrs izdzēsīs piegādāto rakstzīmju skaitu un parādīs atlikušo rezultātu.

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