မာတိကာ
သင် VBA ကို အသုံးပြု၍ အလွယ်ဆုံးနည်းလမ်းအချို့ကို ရှာဖွေနေပါက သင်သည် နေရာမှန်တွင် ရှိနေပါသည်။ ဤဆောင်းပါးကို ဖြတ်သန်းပြီးနောက်၊ သင်သည် စာတန်းခွဲတစ်ခု၏ အနေအထားကို ရှာတွေ့နိုင်သည် သို့မဟုတ် ဤစာတန်းခွဲကို အသုံးပြု၍ ဒေတာကို ထုတ်ယူနိုင်သည် သို့မဟုတ် စာတန်းခွဲတစ်ခု၏ ပုံစံကို အလွယ်တကူ ပြောင်းလဲနိုင်မည်ဖြစ်သည်။ ဆောင်းပါးကို စလိုက်ရအောင်။
အလုပ်စာအုပ်ကို ဒေါင်းလုဒ်လုပ်ပါ
နမူနာအကြောင်းအရာ
VBA ကိုအသုံးပြု၍ စာတန်းခွဲရှာရန် နည်းလမ်း ၉ ခု
ဤတွင်၊ ကျွန်ုပ်တွင် အောက်ပါအတိုင်း ရှိပါသည်။ VBA ကိုသုံး၍ string တစ်ခုရှိ substring ကိုရှာဖွေရန်နည်းလမ်းများကိုကျွန်ုပ်ပြသမည့်ဒေတာဇယား။ ကျပန်းစာတန်းတစ်ခုတွင် ခွဲစာတန်းများကို ရှာဖွေရန် နည်းလမ်းများကိုလည်း ပြသရန် ကြိုးစားပါမည်။
ကျွန်ုပ်သည် Microsoft Excel 365 ဗားရှင်းကို အသုံးပြု၍ ဤလုပ်ငန်းကို လုပ်ဆောင်ခဲ့ပြီး၊ သင်သည် သင့်အဆင်ပြေမှုအရ အခြားဗားရှင်းကို အသုံးပြုနိုင်သည်။
Method-1- VBA ကိုအသုံးပြုပြီး String တစ်ခုအတွင်း ခွဲစာတန်းကိုရှာဖွေခြင်း
သင် VBA ကိုအသုံးပြုထားသော string တစ်ခုတွင် သင်အလိုရှိသော စာကြောင်းခွဲတစ်ခုကို ရှာဖွေလိုပါက၊ သင်သည် <ကိုအသုံးပြုနိုင်ပါသည်။ 11>VBA ကုဒ်ရှိ InStr လုပ်ဆောင်ချက် ။
Step-01 :
➤ Developer Tab>><သို့သွားပါ။ 11>Visual Basic Option
ထို့နောက်၊ Visual Basic Editor ပွင့်လာပါမည်။
➤ <11 သို့သွားပါ။>Insert Tab>> Module Option
ထို့နောက်၊ Module ကို ဖန်တီးပါမည်။
အဆင့်- 02 -
➤ အောက်ပါကုဒ်ကိုရေးပါ
4710
ဤတွင်၊ InStr(1၊ “ ထို့ကြောင့် ငါထင်သည်"၊ "တွေး") စာကြောင်းတစ်ခု၏ substring ၏ အနေအထားကို ပြန်ပေးပါမည်။ 1 ဟူသည်စတင်သည့် အနေအထား၊ “ ထို့ကြောင့် ငါဖြစ်၏” သင်အလိုရှိသော စာကြောင်းခွဲကို သင်ရှာတွေ့မည့် စာကြောင်းဖြစ်ပြီး “စဉ်းစားပါ” သည် သင်ရှာလိုသော စာကြောင်းခွဲဖြစ်သည်။ ၎င်းသည် ပုံသေအားဖြင့် စာလုံးအကြီး-အကဲဆတ်သောကြောင့် သင်ရှာဖွေလိုသော သင့်စာတန်းခွဲ၏ဖြစ်ရပ်ကို သတိထားပါ။
➤ F5
ကိုနှိပ်ပါ။ ရလဒ် -
ထို့နောက်၊ သင်သည် အောက်ပါ မက်ဆေ့ချ်ဘောက်စ် “စဉ်းစားပါ” စာတန်းခွဲ၏ အနေအထားကို ရရှိပါမည်။
Method-2- String တွင် Case-Insensitive ခွဲစာတန်းကို ရှာဖွေခြင်း
VBA ကိုအသုံးပြုသည့်ကိစ္စနှင့်မသက်ဆိုင်ဘဲ string တစ်ခုတွင် သင်အလိုရှိသောစာကြောင်းခွဲတစ်ခုကို ရှာဖွေလိုပါက၊ ၎င်းကို လိုက်နာပါ method 0>ဤနေရာတွင်၊ vbTextCompare ကို စာလုံးအသေး-အာရုံမခံသော စာကြောင်းခွဲကို ရှာရန် အသုံးပြုပါသည်။
➤ F5
ကိုနှိပ်ပါ။ ရလဒ် -
ထို့နောက်၊ သင်သည် အောက်ပါ Message Box “think” substring ၏ အနေအထားကို ရရှိပါမည်။
အောက်ပါကုဒ်ကိုအသုံးပြုခြင်းဖြင့် သင်သည် အလားတူလုပ်ဆောင်နိုင်သည်။
6473
ဤတွင်၊ စာသားနှိုင်းယှဉ်မှုရွေးချယ်ခွင့် စာလုံးအသေးမပါသောစာကြောင်းကို တွေ့ရလိမ့်မည်။
➤ F5
ရလဒ် -
ပြီးနောက်၊ သင် အောက်ပါ Message Box တွင် “think” substring ၏ အနေအထား ပါ၀င်ပါသည်။
Method-3- InstrRev လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်း။ VBA တွင်
ဤတွင်၊ a ၏အဆုံးမှ substring ကိုရှာရန်နည်းလမ်းကိုပြသပါမည်။string.
Step-01 :
➤ Step-01 of Method-1
6254<ကို လိုက်နာပါ 0> InStrRev ဘယ်ဘက်အစား ညာဘက်အခြမ်းမှ စာတန်းခွဲကိုတွေ့လိမ့်မည်။
➤ F5
ကိုနှိပ်ပါ။ရလဒ် -
ထို့နောက်၊ သင်သည် အောက်ပါ Message Box ဒုတိယ “I” စာတန်းခွဲ၏ အနေအထားပါရှိသော အောက်ပါတို့ကို ရရှိမည်ဖြစ်ပါသည်။ ညာဘက်ခြမ်း။
Method-4- Data Range တစ်ခုရှိ String တစ်ခုရှိ Substring ၏ အနေအထားကို ရှာဖွေခြင်း
အထူးဇာတ်ကောင်ကို ရှာလိုပါက “@” အီးမေးလ်အိုင်ဒီ တွင်၊ ထို့နောက် ဤနည်းလမ်းကို လိုက်နာပါ။ ဤရည်ရွယ်ချက်အတွက် ရာထူးကော်လံ ကို ဤနေရာတွင် ထည့်သွင်းထားပါသည်။
အဆင့်-၀၁ -
➤ လိုက်နာပါ Step-01 of Method-1
7568
၎င်းသည် FindSubstring (အခြားမည်သည့်အမည်ကိုမဆို သုံးနိုင်သည်)
တန်ဖိုး သည် စာကြောင်းပါရှိသော ဆဲလ်အကိုးအကားဖြစ်ပြီး ၎င်းကို အပိုင်းအခြား အဖြစ် ကြေညာထားသည်။
အဆင့် -02 :
➤ အထွက်ကို ရွေးပါ Cell E5
➤ အောက်ပါလုပ်ဆောင်ချက်ကို ရိုက်ထည့်ပါ ( VBA )
=FindSubstring(D5)
D5 သည် စာကြောင်းပါရှိသောဆဲလ်ဖြစ်သည်။
➤ ကိုနှိပ်ပါ။ ENTER
➤ Fill Handle Tool
ရလဒ် :
ထို့နောက်၊ သင်သည် အထူးဇာတ်ကောင် “ @” အီးမေးလ်အိုင်ဒီ တွင် ရရှိပါမည်။
အလားတူစာဖတ်ခြင်း-
- ရှာဖွေနည်းExcel တွင် VBA ကိုအသုံးပြုခြင်း (နည်းလမ်း 2 ခု)
- နောက်တစ်ခုရှာဖွေရန် VBA ကို Excel တွင်အသုံးပြုခြင်း (ဥပမာ 2 ခု)
- စာကြောင်းရှာဖွေနည်း Excel တွင် VBA (ဥပမာ 8 ခု)
- VBA နောက်ဆုံးအတန်းကို Excel တွင်ရှာပါ (နည်းလမ်း 5 ခု)
Method-5- အချို့သောစာတန်းခွဲတစ်ခုကို စစ်ဆေးခြင်း ဒေတာအပိုင်းအခြားရှိ စာကြောင်းတစ်ခု
ဆိုပါစို့၊ သင်သည် Pass သို့မဟုတ် Fail to correspond ရလဒ်ကော်လံအပေါ် မူတည်၍ ကျောင်းသားများ၏ အမည်များကို ရေးလိုသည်ဆိုပါစို့၊ နေရာတွင် Pass သို့မဟုတ် Fail ကို ကွင်းပိတ်တစ်ခုတွင် ရေးထားသည်။ ရလဒ်ကော်လံ တွင် ဤစာကြောင်းခွဲကိုရှာရန် Pass သို့မဟုတ် fail column ဤနည်းလမ်းကို လိုက်နာပါ။
Step-01 :
➤ လိုက်နာရန် Step-01 of Method-1
6389
ဤတွင်၊ ဆဲလ်အပိုင်းအခြားသည် C5:C10 ၎င်းသည် ရလဒ်ကော်လံ
InStr(cell.value, “Pass”) > 0 သည် နံပါတ် သုညထက် ကြီးသော အခြေအနေဖြစ်သည် (ဆဲလ်တွင် “Pass” ) ပါ၀င်သောအခါ၊ ထို့နောက် အောက်ပါစာကြောင်းသည် ဆက်သွားမည်ဖြစ်ပြီး ကပ်လျက်ဆဲလ်အတွင်းရှိ အထွက်ကို ကျော်သွားသည် .
အခြေအနေသည် မှားယွင်းသွားပါက ဆဲလ်တစ်ခုတွင် “Pass” မပါဝင်ပါက၊ Else အောက်ရှိ စာကြောင်းက လုပ်ဆောင်ပြီး အထွက်တန်ဖိုးကို ပေးမည်ဖြစ်သည်။ ကပ်လျက်ဆဲလ်သည် မအောင်မြင်ပါ ။
ဤကွင်းဆက်သည် ဆဲလ်တစ်ခုစီအတွက် ဆက်သွားပါမည်။
➤ F5 <ကိုနှိပ်ပါ။ 1>
ရလဒ် -
ထို့နောက်၊ သင်သည် Pass သို့မဟုတ် ကျရှုံးမှုတွင် အောက်ပါရလဒ်များကို ရရှိလိမ့်မည် ကော်လံ။
နည်းလမ်း-၆- စာကြောင်းတစ်ကြောင်းရှိ အချို့သောစာတန်းခွဲတစ်ခုကို စစ်ဆေးခြင်းနှင့် ဒေတာကို ထုတ်ယူခြင်း
အမည်ရှိသော ကျောင်းသားများကို ရှာဖွေရန် နည်းလမ်းကို ကျွန်ုပ်ပြပါမည်။ Michael ကျောင်းသားအမည်ကော်လံ တွင် ဤနည်းလမ်းတွင် VBA ကို အသုံးပြု၍ ၎င်းတို့၏ သက်ဆိုင်ရာဒေတာကို ထုတ်ယူပါ။
Step-01 -
➤ လိုက်နာပါ Step-01 of Method-1
8739
ဤတွင်၊ ကျွန်ုပ်အသုံးပြုပြီးပြီ B100 Active Sheet Range အဖြစ်၊ သို့သော် သင့်အသုံးပြုမှုအရ မည်သည့်အကွာအဝေးကိုမဆို အသုံးပြုနိုင်ပါသည်။
InStr(1, Range("B" & i), "Michael") > 0
သည် ဆဲလ်အတွင်းရှိမရှိ စစ်ဆေးခြင်းအတွက် အခြေအနေဖြစ်သည်။ ကော်လံ B တွင် Michael
Range("E" & icount & ":G" & icount)
သည် သင့် output data လိုချင်သည့် အပိုင်းအခြားဖြစ်ပြီး Range("B" & i & ":D" & i).value
တန်ဖိုးများကို ပေးမည် ကော်လံ B မှ D ။
➤ F5
<11 ကိုနှိပ်ပါ။>ရလဒ် :
ထို့နောက်၊ Michael အမည်ရှိသော ကျောင်းသားများအတွက် အောက်ပါ ထုတ်ယူထားသော ဒေတာကို သင်ရရှိပါမည်။
Method-7- Word အတွက် Substring ကိုရှာဖွေခြင်း
သင်သည် စာလုံးခွဲကို စကားလုံးအဖြစ် ရှာလိုပါက၊ ဤနည်းလမ်းကို လျှော့ပါ။
Step-01 -
➤ Step-01 of Method-1
ကို လိုက်နာပါ6988
စာကြောင်းတွင် ဖြစ်ပါက ရှိမရှိ စစ်ဆေးမည်ဖြစ်ပြီး ၎င်းသည် ၎င်း၏ရာထူးကို
➤ F5 ကို နှိပ်ပါ
ရလဒ် -
ထို့နောက်၊ သင်သည် ရာထူးတွင်တွေ့ရသော စကားလုံး-6 ကိုပြသသည့် အောက်ပါမက်ဆေ့ခ်ျဘောက်စ်ကို သင်ရရှိလိမ့်မည် (ရာထူး is )။
သင်စမ်းသပ်နိုင်ပါသည်။စာကြောင်းထဲမပါသောစကားလုံးအတွက် ဤကုဒ်ကိုထုတ်ပါ။
➤အောက်ပါကုဒ်ကိုရိုက်ပါ
1331
➤ F5 <ကိုနှိပ်ပါ။ 1>
ရလဒ် -
ထို့နောက်၊ သင်သည် စကားလုံးရှာမတွေ့ပါ ကိုပြသသည့် အောက်ပါမက်ဆေ့ချ်ဘောက်စ်ကို ရရှိမည်ဖြစ်သည်။
Method-8- Instr နှင့် LEFT လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်း
ဤနေရာတွင်၊ string တစ်ခုရှိ စာကြောင်းခွဲတစ်ခု၏ အနေအထားကို ရှာတွေ့ရန် နည်းလမ်းကို ရှင်းပြမည်ဖြစ်ပြီး ကို အသုံးပြု၍ ဤစာတန်းခွဲရှေ့တွင် စာသားများကို ထုတ်ယူပါ VBA နှင့် LEFT function ။
Step-01 :
➤ Step-01 ၏ Method-1
1679
j = InStr(txt, "is")
သည် စာတန်းခွဲများ၏ အနေအထား မှာ ဖြစ်ပြီး Left(txt, j - 1)
သည် <11 မတိုင်မီတွင် စာတန်းခွဲများကို ထုတ်ယူမည်> is ။
➤ F5
ရလဒ် :
ကိုနှိပ်ပါ။ ထို့နောက်တွင်၊ ဤနေရာတွင် (ရှေ့တွင် is ) ကိုပြသထားသည့် အောက်ပါမက်ဆေ့ခ်ျဘောက်စ်ကို သင်ရရှိမည်ဖြစ်သည်။
နည်းလမ်း-၉- တင်းတင်းကျပ်ကျပ် String တစ်ခုရှိ အချို့သောစာကြောင်းခွဲ
ဤနည်းလမ်းကို လိုက်နာခြင်းဖြင့် ရလဒ်ကော်လံ ရှိ ကွင်းကွင်းများရှေ့တွင် အဆင့်များကို ရဲရဲတင်းတင်း လုပ်နိုင်ပါသည်။ ဃ.
အဆင့်-၀၁ -
➤ လိုက်နာပါ အဆင့်-၀၁ နည်းလမ်း- 1
8074
txt = InStr(1, Cell, "(")
ပထမကွင်းစကွက်၏ အနေအထားကို ပြန်ပေးမည်ဖြစ်ပြီး Cell.Characters(1, txt - 1).Font.Bold
ပထမကွင်းဆက် Bold မတိုင်မီ စာတန်းခွဲကို ပြုလုပ်ပါမည်။
အဆင့်- 02 -
➤ ရလဒ်ကော်လံကို ရွေးပါ
➤ Go Developer Tab>> Macros Option
ထို့နောက် Macro wizard ပေါ်လာပါမည်။
➤ Boldingsubstring (VBA ကုဒ်အမည်) ကိုရွေးချယ်ပြီးနောက် Run ။
ရလဒ် -
ထို့နောက်၊ ရလဒ် ကော်လံ ရှိ အဆင့်များကို ရဲရင့်လာပါမည်။
လေ့ကျင့်မှုအပိုင်း
သင်ကိုယ်တိုင် လက်တွေ့လုပ်ဆောင်ရန်အတွက် အလေ့အကျင့် ဟု အမည်ပေးထားသည့် စာရွက်တွင် အောက်ဖော်ပြပါကဲ့သို့ အလေ့အကျင့် အပိုင်းကို ပေးထားပါသည်။ ကျေးဇူးပြု၍ ကိုယ်တိုင်လုပ်ပါ။
နိဂုံးချုပ်
ဤဆောင်းပါးတွင်၊ VBA ကို အသုံးပြု၍ အလွယ်ဆုံးနည်းလမ်းများကို ရှာဖွေရန် ကြိုးစားခဲ့သည် Excel တွင်ထိရောက်စွာ။ အသုံးဝင်မယ်လို့ မျှော်လင့်ပါတယ်။ သင့်တွင် အကြံပြုချက်များ သို့မဟုတ် မေးခွန်းများရှိပါက ၎င်းတို့အား ကျွန်ုပ်တို့နှင့် မျှဝေပေးပါ။