Vba- စာကြောင်းတစ်ခုရှိ ဇာတ်ကောင်များကို အစားထိုးနည်း


string တစ်ခုရှိ စာလုံးများကို အစားထိုးရန် VBA တွင် Replace() method ကို သုံးနိုင်သည်။

ဤနည်းလမ်းသည် အောက်ပါအခြေခံ syntax ကိုအသုံးပြုသည်-

အစားထိုးခြင်း(အသုံးအနှုန်း၊ ရှာဖွေ၊ အစားထိုး၊ စတင်၊ ရေတွက်)

ရွှေ-

  • expression- စာလုံးများကို သင်အစားထိုးလိုသော စာကြောင်း
  • find : ရှာရန် စာကြောင်း
  • အစားထိုး : အစားထိုးအဖြစ် အသုံးပြုရန် စာကြောင်း
  • start ( optional ) : ရှာဖွေရန် string မှ စတင်သည့် အနေအထား
  • count ( optional ) : လုပ်ဆောင်ရန် အစားထိုးမှု အရေအတွက်

အောက်ဖော်ပြပါနမူနာများသည် Excel ရှိ အောက်ပါစာကြောင်းများစာရင်းဖြင့် ဤနည်းလမ်းကို လက်တွေ့အသုံးပြုနည်းကို ပြသသည်-

ဥပမာ 1- စာကြောင်းတစ်ခုရှိ ဇာတ်ကောင်များ၏ ဖြစ်ပျက်မှုအားလုံးကို အစားထိုးရန် VBA ကိုသုံးပါ

စာကြောင်းတစ်ခုစီတွင် “ ဤ” ကို “ ထို” ဖြင့် အစားထိုးလိုသည်ဟု ဆိုကြပါစို့။

ဒါကိုလုပ်ဖို့ အောက်ပါ macro ကို ဖန်တီးနိုင်ပါတယ်။

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(Range(" A " & i), " this ", " THAT ")
Next i
End Sub

ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ကော်လံ B သည် ကော်လံ A ရှိ ကြိုးတစ်ချောင်းစီကို ပြသသည်၊ “ ဤ” ပေါ်ပေါက်မှုတစ်ခုစီကို “ ထို” ဖြင့် အစားထိုးသည်။

ဤအစားထိုးမှုသည် case sensitive ဖြစ်သည်ကို သတိပြုပါ။

ဆိုလိုသည်မှာ “ဤ” ဖြစ်ပျက်မှုတိုင်းကို အစားထိုးသော်လည်း “ဤ” ဖြစ်ပျက်မှုတိုင်းသည် တစ်ဦးတည်းကျန်ရစ်သည်။

ဥပမာ 2- စာကြောင်းတစ်ခုရှိ ဇာတ်ကောင်များ၏ ဖြစ်ပျက်မှုအားလုံးကို အစားထိုးရန် VBA ကိုသုံးပါ (စာလုံးအသေးမပါသော)

စာကြောင်းတစ်ခုစီရှိ “ ဤ” (မည်သည့်ကိစ္စမဆို) “ THAT” ဖြင့် အစားထိုးလိုသည်ဆိုကြပါစို့။

ဒါကိုလုပ်ဖို့ အောက်ပါ macro ကို ဖန်တီးနိုင်ပါတယ်။

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", " THAT ")
Next i
End Sub

ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ကော်လံ B သည် ကော်လံ A ရှိ ကြိုးတစ်ချောင်းစီကို ပြသသည်၊ “ ဤ” ပေါ်ပေါက်မှုတစ်ခုစီကို “ ထို” ဖြင့် အစားထိုးသည်။

ဤအစားထိုးမှုသည် case sensitive မဟုတ်ကြောင်း သတိပြုပါ။

ဆိုလိုသည်မှာ၊ “ ဤ” ၏ဖြစ်ပျက်မှုတိုင်း (စာလုံးကြီးဖြစ်စေ၊ မရေးသည်ဖြစ်စေ) ကိုအစားထိုးသည်။

စာကြောင်းတစ်ခုစီရှိ “ ဤ” ကိုမရှာဖွေမီ ကော်လံ A ရှိ စာကြောင်းတစ်ခုစီကို စာလုံးသေးအဖြစ်သို့ ဦးစွာပြောင်းလဲရန် LCase နည်းလမ်းကို အသုံးပြု၍ ဤ case-insensitive အစားထိုးမှုကို ကျွန်ုပ်တို့ လုပ်ဆောင်နိုင်ခဲ့သည်။

ဥပမာ 3- ကြိုးတစ်ချောင်းတွင် ဇာတ်ကောင်တစ်ခု၏ ပထမ N ဖြစ်ပျက်မှုကို အစားထိုးရန် VBA ကို အသုံးပြုပါ။

စာကြောင်းတစ်ခုစီရှိ “ ဤ” (မည်သည့်ကိစ္စနှင့်မျှမသက်ဆိုင်) “ အဲ” ၏ပထမဆုံးဖြစ်ပေါ်မှုကိုသာ အစားထိုးလိုသည်ဆိုပါစို့။

ဒါကိုလုပ်ဖို့ အောက်ပါ macro ကို ဖန်တီးနိုင်ပါတယ်။

 Sub ReplaceChar()
Dim i As Integer

For i = 2 To 8
    Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", " THAT ", Count:=1)
Next i
End Sub

ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ကော်လံ B သည် ကော်လံ A ရှိ ကြိုးတစ်ချောင်းစီကို “ ဤ” နှင့် “ အဲဒါ” ဖြင့် အစားထိုးသည့် ပထမဆုံးဖြစ်ပေါ်မှုသာ ပြသသည်။

သတ်မှတ်ထားသောစာကြောင်းတစ်ခု၏ပထမဆုံးဖြစ်ပေါ်မှုကိုသာအစားထိုးရန် Count:=1 ကို အသုံးပြုခဲ့သည်ကို သတိပြုပါ၊ သို့သော် သင်သည် သတ်မှတ်ထားသောစာကြောင်း၏ပထမ n ဖြစ်ပျက်မှုများကို သင်အစားထိုးလိုသော မည်သည့်တန်ဖိုးနှင့်မဆို 1 ကို အစားထိုးနိုင်ပါသည်။

မှတ်ချက် – VBA Replace နည်းလမ်းအတွက် စာရွက်စာတမ်းအပြည့်အစုံကို ဤနေရာတွင် ရှာနိုင်သည်။

ထပ်လောင်းအရင်းအမြစ်များ

အောက်ဖော်ပြပါ သင်ခန်းစာများသည် VBA ကို အသုံးပြု၍ အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-

VBA- စာကြောင်းတစ်ခုရှိ ဇာတ်ကောင်များ၏ ဖြစ်ပေါ်မှုကို ရေတွက်နည်း
VBA- စာကြောင်းတစ်ကြောင်းတွင် အခြားစာကြောင်းပါရှိမရှိ စစ်ဆေးနည်း
VBA- သီးခြားစာသားဖြင့် ဆဲလ်များကို ရေတွက်နည်း

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်