မာတိကာ
Excel တွင် VBA ကို အသုံးပြု၍ အပိုင်းအခြားကို မည်သို့ခွဲမည်ကို သိရှိခြင်းသည် ကျွန်ုပ်တို့၏နေ့စဉ်တွက်ချက်မှုများတွင် အချိန်နှင့် ကြိုးစားအားထုတ်မှု သက်သာစေပါသည်။ Excel သည် default အနေဖြင့် sorting facility ကိုပေးသော်လည်း၊ Range.Sort method ကိုအသုံးပြုခြင်းဖြင့်၊ ကျွန်ုပ်တို့သည် ပုံမှန်ထက်ပို၍ရွေးချယ်စရာများရှိသော ဒေတာအတွဲတစ်ခုကို စီရန် ကန့်သတ်ချက်အများအပြားကို ဝင်ရောက်ခွင့်ရရှိပါမည်။
အလေ့အကျင့်စာအုပ်ကို ဒေါင်းလုဒ်လုပ်ပါ
ဤဆောင်းပါးကိုဖတ်ရှုနေစဉ် လေ့ကျင့်ခန်းလုပ်ရန် ဤအလေ့အကျင့်စာအုပ်ကို ဒေါင်းလုဒ်လုပ်ပါ။
အပိုင်းအခြားကို Excel.xlsm တွင် စီရန်
Range.Sort Statement in Excel VBA
Objective : ဆဲလ်ဒေတာအကွာအဝေးကို စီရန်။
Syntax:
ဖော်ပြချက် ။ စီရန် ( Key1 ၊ Order1 ၊ Key2 ၊ အမျိုးအစား ၊ Order2 ၊ Key3 ၊ Order3 ၊ Header ၊ OrderCustom ၊ MatchCase ၊ Orientation ၊ SortMethod ၊ DataOption1 ၊ DataOption2 ၊ DataOption3 )
ဤတွင်၊ ဖော်ပြချက် သည် အကွာအဝေး အရာဝတ္တု (ဥပမာ၊ ဆဲလ်တစ်ခု၊ အတန်းတစ်ခု၊ ကော်လံတစ်ခု သို့မဟုတ် ဆဲလ်ရွေးချယ်မှုတစ်ခုအား ကိုယ်စားပြုသည်။
အကြောင်းပြချက်များ-
ကျွန်ုပ်တို့သည် Range. Sort method အတွက် ပင်မဘောင် သုံးခုကို ပေးဆောင်ရန် လိုအပ်ပါသည်။ ၎င်းတို့မှာ-
သော့ – ကျွန်ုပ်တို့ စီရန် လိုအပ်သော ကော်လံတစ်ခု သို့မဟုတ် အများအပြားမှ ဆဲလ်များ၏ အကွာအဝေး။
အမှာစာ – စီစဥ်မှု အစီအစဉ်ကို သတ်မှတ်ပါ ကြီးစဉ်ငယ်လိုက် သို့မဟုတ် ကြီးစဉ်ငယ်လိုက်။
ခေါင်းစီး – စီစဥ်မည့်ကော်လံများတွင် ခေါင်းစီးရှိမရှိကို ကြေညာပါ။
6 Excel VBA တွင် အပိုင်းအခြားစီရန် နမူနာများ
အတွင်းဤဆောင်းပါးကို ဒေတာအတွဲအဖြစ်၊ ကျွန်ုပ်တို့သည် ၎င်းတို့၏ မွေးသက္ကရာဇ်နှင့် အသက်တို့နှင့်အတူ လူများ၏ အမည်စာရင်းကို အသုံးပြုပါမည်။ ဒေတာအတွဲကို စီရန် မတူညီသောနည်းလမ်းများကို အသုံးပြုပါမည်။ ဆောင်းပါးကို ဖြတ်သန်းပြီး ဤနည်းလမ်းများကို ကျွမ်းကျင်အောင် လေ့ကျင့်ကြပါစို့။
၁။ Excel VBA ကိုအသုံးပြု၍ ကော်လံတစ်ခုစီအကွာအဝေးကိုစီပါ
ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် လူများကို အသက်အကြီးဆုံး မှ အငယ်ဆုံးသို့ စီမည် ။ အပိုင်းအခြား ကိုအသုံးပြုရန် အဆင့်များကို လိုက်နာကြပါစို့။ စီရန် နည်းလမ်း ထိုသို့ စီရန် အသက်အရွယ်ကော်လံ ကို ကြီးစဉ်ငယ်လိုက် ။
အဆင့်များ-
- Developer Tab သို့သွားပါ Excel Ribbon<2 Visual Basic
- ပေါ်မှ Click ကိုနှိပ်ပြီး Module option ကို ရွေးပါ<2 Moduleအသစ် ကိုဖွင့်ရန် Insert tab မှနေ၍
ယခုကျွန်ုပ်တို့၏ကုဒ်ကို ထည့်ပေးပါမည်။ စီရန် အသက် ကော်လံအပိုင်းအခြား။
1.1 ခေါင်းစီးပါသော ကော်လံ
အောက်ပါကုဒ်ကို ရုပ်မြင်ကုဒ်တည်းဖြတ်မှုတွင် ထည့်ပါ။
9164
F5 ကို နှိပ်ပါ သို့မဟုတ် Run ခလုတ်ကို နှိပ်ပါ ကုဒ် ကို လုပ်ဆောင်ရန်။
ရှင်းလင်းချက်-
အထက်ကုဒ်တွင်၊ ကျွန်ုပ်တို့သည်-
Expression (Range object)=Range(“D4:D11”); အသက် ကော်လံ တွင် ခေါင်းစီး ရှိ ဆဲလ် D4 နှင့် တန်ဖိုး in D5:D11။
သော့ = အပိုင်းအခြား(“D4”); ကီး စီရန်။
Order= xlDescending ကျွန်ုပ်တို့ စီရန် တန်ဖိုးများကို အကြီးဆုံး မှ အနိမ့်ဆုံး ကျွန်ုပ်တို့သည် စီရန် အစီစဥ်ကို သတ်မှတ်ပေးပါသည်။ အဖြစ် မှ ဆင်းနေပါသည်။
ခေါင်းစီး =xlYes; အောက်ဖော်ပြပါ ဖန်သားပြင်ဓာတ်ပုံတွင်၊ ဒေတာအတွဲ တွင် ရှိသည်ကို ကျွန်ုပ်တို့ တွေ့မြင်နိုင်ပါသည် ကော်လံတစ်ခုစီအတွက် ခေါင်းစီး
1.2 ခေါင်းစီးမပါသော ကော်လံ
အောက်ပါတို့ကို ထည့်ပါ အမြင်ကုဒ်တည်းဖြတ်သူရှိကုဒ်။
6390
F5 ကိုနှိပ်ပါ သို့မဟုတ် ကုဒ်ကိုလုပ်ဆောင်ရန် ခလုတ်ကို ကုဒ်ကိုလုပ်ဆောင်ရန်
ကိုနှိပ်ပါ။
ရှင်းလင်းချက်-
အထက်ကုဒ်တွင်၊ ကျွန်ုပ်တို့သည်-
ဖော်ပြချက် (အပိုင်းအခြားအရာ)=Range(“D4 :D10”); အသက်ကော်လံ ခေါင်းစီး မရှိသော တန်ဖိုး တွင် D4:D10။
သော့ = အပိုင်းအခြား(“D4”); ကီး စီရန်။
Order= xlDescending ကျွန်ုပ်တို့သည် စီရန် တန်ဖိုးများကို အကြီးဆုံး မှ အနိမ့်ဆုံး ကျွန်ုပ်တို့သည် စီရန်အစီစဥ် ကို ကြီးစဉ်ငယ်အဖြစ် သတ်မှတ်ထားသည်။
ခေါင်းစီး =xlNo; အောက်ဖော်ပြပါ ဖန်သားပြင်ဓာတ်ပုံတွင်၊ ဒေတာအတွဲ တွင် ခေါင်းစီး မရှိသည်ကို ကျွန်ုပ်တို့ တွေ့နိုင်ပါသည်။
ဆက်စပ်အကြောင်းအရာ- ဒေတာမရောနှောဘဲ Excel တွင် ကော်လံများကို စီရန်နည်း (၃ နည်းလမ်း)
၂။ VBA ကုဒ်ကို အသုံးပြု၍ Excel တွင် ကော်လံအများအပြားအကွာအဝေးကိုစီရန်
ကော်လံအများအပြားကို စီရန်ပြရန် ကော်လံအများအပြား ကို မွမ်းမံပြင်ဆင်ရန် ကျွန်ုပ်တို့ လိုအပ်သည် 1>ဒေတာအတွဲ အနည်းငယ်။ ကျွန်ုပ်တို့ ထည့်သွင်းခဲ့သည် အသစ် တန်းများ အနည်းငယ်ကို ထည့်သွင်းခဲ့သည်။ ပြုပြင်ထားသောဒေတာအတွဲတွင်၊ အတန်း 7၊ 8၊ နှင့် 9 တွင် မွေးသက္ကရာဇ် နှင့် အသက်များအတွက် တူညီသော တန်ဖိုးများရှိသည်။ ဒါပေမယ့် နာမည်သုံးမျိုး ။ ဤ အမည်များ သည် မဟုတ်ပါ သီးခြားအစီအစဥ်တစ်ခုဖြစ်သည်။ အတက်အကျ သို့မဟုတ် ကြီးစဉ်ငယ်လိုက်။
ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် အစဉ်လိုက် တွင် နာမည်များကို စီစဥ်ပါမည်။ ရုပ်ပုံအခြေခံတည်းဖြတ်မှုတွင် အောက်ပါကုဒ်ကို လုပ်ဆောင်ကြပါစို့-
7101
ရှင်းလင်းချက်-
အထက်တွင် ဖန်သားပြင်ဓာတ်ပုံ၊ ကော်လံ D ရှိ အသက်များကို စီထားသည် မှ ကြီးစဉ်ငယ်လိုက် အစီအစဥ်ဖြင့် စီထားသည်ကို ကျွန်ုပ်တို့ တွေ့နိုင်ပါသည်။ ကျွန်ုပ်တို့သည် နောက်ထပ် parameters နှစ်ခု ကို ကျွန်ုပ်တို့၏ယခင်ကုဒ်တွင် ထည့်ထားပါသည်။
Key2: =Range(“B4”) ၊ အမည်များကို စီရန်သော့။
အမှာစာ2: =xlAscending ၊ အမှာစာ အတွက် အတိုကောက်အမည်များ ။
ရလဒ်အနေဖြင့် အမည်များ တွင် ကျွန်ုပ်တို့ တွေ့ရသည် အတန်း 7၊ 8 နှင့် 9 ကို ယခု အက္ခရာစဉ်အလိုက် အက္ခရာစဉ်အတိုင်း ကြီးကြီးလိုက် အစဉ်လိုက် စီထားသည်။
အောက်ပါ ဖန်သားပြင်ဓာတ်ပုံတွင်၊ ကျွန်ုပ်တို့သည် ကို ပြောင်းထားသည်။ တန်ဖိုး အမှာစာ 2 ဘောင် မှ စီရန် အစဉ်လိုက် အစီအစဥ်ရှိ အမည်များ ။
နောက်ထပ်ဖတ်ရန်- Excel တွင် ကော်လံအများအပြားကို စီမည်နည်း (5 အမြန်နည်းလမ်းများ)
၃။ Excel VBA တွင် ကော်လံအကွာအဝေးကိုစီရန် ခေါင်းစီးအား နှစ်ချက်နှိပ်ပါ
Excel ၏ ပုံသေအမျိုးအစားခွဲခြင်းအင်္ဂါရပ်သည် ကော်လံတစ်ခု၏ တန်ဖိုး ကို <1 ဖြင့် စီရန်ခွင့်မပြုပါ။ the ကော်လံခေါင်းစီး ကို နှစ်ချက်နှိပ်ပါ။ ဒါပေမယ့် VBA ကုဒ်ကို အသုံးပြုပြီး အဲဒါကို လုပ်နိုင်မှာပါ။ အောက်ပါကုဒ်ကိုအသုံးပြုခြင်းဖြင့် ဤလုပ်ဆောင်နိုင်စွမ်းကို သရုပ်ဖော်ကြပါစို့။
6731
ဤကုဒ်တွင်၊ ကျွန်ုပ်တို့သည် DoubleClick event ကို ပုံမှန်နှစ်ချက်ပိတ်ရန် – ကလစ် ဆဲလ်၏ တည်းဖြတ်ခြင်း မုဒ်ကို စတင်ရန်ဖြစ်သည်။ ဒီပွဲနဲ့ကျွန်ုပ်တို့သည် နှစ်ချက် – ကော်လံခေါင်းစီးများထဲမှ တစ်ခုခုကို ကိုနှိပ်ပါက ၎င်းသည် ကော်လံဒေတာကို ကြီးလိုက်ကြီးငယ်လိုက် ဖြင့် စီပေးသည်။
နောက်ထပ်ဖတ်ရန်- VBA ကော်လံကိုစီရန် (4 Methods)
အလားတူစာဖတ်ခြင်း-
- Excel တွင် Sort Button ထည့်နည်း (7 Methods)
- Excel တွင် Unique List ကိုစီပါ (အသုံးဝင်သောနည်းလမ်း 10 ခု)
- လုပ်နည်း Excel VBA တွင် စီရန် လုပ်ဆောင်ချက်ကို အသုံးပြုရန် (သင့်လျော်သော ဥပမာ 8 ခု)
- Excel (ကော်လံများနှင့် အတန်းများ) တွင် ထပ်နေသည်များကို စီပါ
- Excel တွင် ကျပန်း စီရန် ( ဖော်မြူလာ + VBA)
၄။ Excel VBA ကိုအသုံးပြု၍ နောက်ခံအရောင်ပေါ်အခြေခံ၍ ကော်လံအပိုင်းအခြားကိုစီရန်
ကော်လံတစ်ခုအတွင်း ဆဲလ်အကွာအဝေး ၎င်းတို့၏ နောက်ခံအရောင်<ပေါ်အခြေခံ၍ စီရန် ၂>။ ထိုသို့ပြုလုပ်ရန်၊ ကျွန်ုပ်တို့သည် တန်ဖိုး xlSortOnCellColor ဟုအမည်ပေးထားသော SortOn တစ်ခု တစ်ခု တစ်ခုကို ပေါင်းထည့်ရန် လိုအပ်ပါသည်။ စီခြင်းအား သရုပ်ပြရန်၊ ကျွန်ုပ်တို့သည် မတူညီသော နောက်ခံအရောင် ကို ကျွန်ုပ်တို့၏ ဒေတာအတွဲ အတန်းသို့ ဦးစွာ သတ်မှတ်ပါသည်။
ထို့နောက် အမြင်အခြေခံတွင် ကုဒ်တည်းဖြတ်သူ ကော်ပီ အောက်ပါကုဒ်ကို ကူးယူပြီး F5 ကို နှိပ်ပါ။
1939
အောက်ပါ ဖန်သားပြင်ဓာတ်ပုံတွင်၊ စီထားသည့် ဒေတာအတွဲ အခြေခံကို ကျွန်ုပ်တို့ တွေ့မြင်နိုင်ပါသည် ၎င်းတို့၏နောက်ခံအရောင်ပေါ်တွင်။
ရှင်းလင်းချက်-
- ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် အလုပ်စာရွက် “ နောက်ခံ ”။ ထို့ကြောင့်၊ ကျွန်ုပ်တို့သည် ကုဒ်တွင် “ နောက်ခံ ” ကို ကျွန်ုပ်တို့၏ တက်ကြွသော အလုပ်စာရွက်အမည်အဖြစ်
- ကျွန်ုပ်တို့ B4 သော့အဖြစ် သတ်မှတ်ပါသည်။ နှင့် B4:D10 အဖြစ် အပိုင်းအခြား ။ ကုဒ်သည် သော့အပေါ်အခြေခံ၍ ဒေတာကို စီစဥ်ပေးပါမည်။
- ကျွန်ုပ်တို့ ခေါင်းစီးပါရာမီတာ ကို မသတ်မှတ်ထားသောကြောင့်၊ ကုဒ်သည် ပုံသေ ခေါင်းစီးမရှိသော ဖြစ်သည်။
- ကျွန်ုပ်တို့သည် အမှာစာ ကန့်သတ်ဘောင်ကို ကြီးကြီးလိုက်၊ ထို့ကြောင့် ၎င်းသည် ဒေတာကို အောက်ခြေမှ ပိုမြင့်သောတန်ဖိုးများအထိ စီစဥ်ထားသည်။
ပိုမိုဖတ်ရှုပါ- Excel တွင် အရောင်အလိုက် စီမည်နည်း (စံသတ်မှတ်ချက် 4 ခု)
၅။ ဖောင့်အရောင်ကို အခြေခံ၍ ကော်လံအကွာအဝေးကို စီရန် VBA ကုဒ်ကို အသုံးပြုပါ
VBA ကုဒ်ကို အသုံးပြုခြင်းဖြင့်၊ ကျွန်ုပ်တို့၏ ဒေတာအတွဲကို ၎င်းတို့၏ ဖောင့်အရောင် ပေါ်မူတည်၍ စီနိုင်ပါသည်။ ပထမဦးစွာ၊ ဥပမာကိုပြရန် ကွဲပြားခြားနားသောအတန်းများကို အရောင်ခြယ်ရန် လိုအပ်ပါသည်။
font color ကိုအခြေခံ၍ ဒေတာအတွဲကို စီရန် အောက်ပါကုဒ်ကို အသုံးပြုပါ။
1309
ရှင်းလင်းချက်-
- ဤတွင် ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့သည် worksheet “ fontcolor ” ဟုခေါ်သည်။ ထို့ကြောင့်၊ ကျွန်ုပ်တို့သည် ကုဒ်တွင် “ fontcolor ” ကို ကျွန်ုပ်တို့၏ လုပ်ဆောင်နေသော အလုပ်စာရွက်အမည်အဖြစ်
- ကျွန်ုပ်တို့သည် B4 ကို သော့အဖြစ် သတ်မှတ်ပါသည်။ နှင့် B4:D11 အပိုင်းအခြား အဖြစ်။ ကုဒ်သည် သော့အပေါ်အခြေခံ၍ ဒေတာကို စီစဥ်ပေးမည်ဖြစ်သည်။
- ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် ခေါင်းစီးဘောင်ကို xlYes အဖြစ် သတ်မှတ်ပေးထားပါသည်။
- ဤနေရာတွင်၊ ကျွန်ုပ်တို့သည် အမှာစာကို သတ်မှတ်ပေးပါသည်။ parameter သည် ကြီးတက်သွားသည်၊ ထို့ကြောင့် ၎င်းသည် ဒေတာကို အောက်ခြေမှ ပိုမြင့်သောတန်ဖိုးများအထိ စီခွဲထားသည်။
- SortOn ပါရာမီတာ၏တန်ဖိုးသည်
- ဦးတည်ချက်ဘောင် တန်ဖိုးသည် xlTopToBottom မဖြစ်မနေ ဖြစ်သောကြောင့်
- အရောင်ကို စီရန် သည် RGB ဝေါဟာရများဖြင့် တန်ဖိုးတစ်ခုရှိသည်။ 0 မှ 255 ။
နောက်ထပ် ဖတ်ရှုရန်- Excel တွင် ကော်လံနှစ်ခုကို ကိုက်ညီအောင် စီရန် (နှစ်ခုစလုံး အတိအကျ နှင့် တစ်စိတ်တစ်ပိုင်း ကိုက်ညီမှု)
၆။ Excel VBA ကို အသုံးပြု၍ အပိုင်းအခြားကို စီရန် လမ်းကြောင်းပြောင်းရန်
ဦးတည်ချက် ပါရာမီတာကို အသုံးပြု၍ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့ ဒေတာစီရန်လိုသည့် ပုံစံကို ပြောင်းလဲနိုင်ပါသည်။ ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် သို့ ကျွန်ုပ်တို့၏ဒေတာအတွဲကို စီရန် ၎င်းကို အလျားလိုက် သို့ ကူးပြောင်းထားပါသည်။
ကို ထည့်ကြပါစို့။ ရုပ်ပုံအခြေခံတည်းဖြတ်သူရှိ အောက်ပါကုဒ်ကို လုပ်ဆောင်ရန် F5 ကိုနှိပ်ပါ။
9158
ဤနေရာတွင် ကျွန်ုပ်တို့ အတန်းအစား ဒေတာ အသက်အတန်း သို့ အစဉ်လိုက် ဘယ် မှ ညာ တွင်။ ကုဒ်တွင်၊ ကျွန်ုပ်တို့သည် ဦးတည်ချက် ပါရာမီတာကို xlSortRows အဖြစ် သတ်မှတ်ထားသည်။
ဆက်စပ်အကြောင်းအရာ- ကော်လံအများအပြားကို Excel တွင် အလိုအလျောက်စီရန် လုပ်နည်း (၃ နည်းလမ်း)
မှတ်သားစရာများ
- ကျွန်ုပ်တို့ စီရန် စီရန် နောက်ခံအရောင် နှင့် ဖောင့်အရောင် ကိုအခြေခံ၍ ကော်လံအကွာအဝေးကို အလုပ်စာရွက်အရာဝတ္ထု ကသာ အသုံးပြုနိုင်ပါသည်။ range object ဖြင့် ၎င်းကို ကျွန်ုပ်တို့ အသုံးမပြုနိုင်ပါ။
- DoubleClick event ဒေတာကို အတက်အကျတွင်သာ စီတန်းထားပါသည်။
နိဂုံးချုပ်
ယခု၊ Excel တွင် VBA ကို အသုံးပြု၍ အပိုင်းအခြားကို စီရန်ကို ကျွန်ုပ်တို့ သိပါသည်။ ဒါကို ပိုပြီးယုံကြည်စိတ်ချစွာ အသုံးပြုဖို့ အားပေးမယ်လို့ မျှော်လင့်ပါတယ်။ မေးခွန်းများ သို့မဟုတ် အကြံပြုချက်များအား အောက်ပါ comment box တွင် ထားရန် မမေ့ပါနှင့်။