မာတိကာ
ကျွန်ုပ်တို့၌ ဒေတာပမာဏများစွာရှိသောအခါ တစ်ခါတစ်ရံတွင် မည်သည့်ဒေတာအတွဲမှ သီးခြားဒေတာကို ထုတ်ယူရန်ခက်ခဲသည်။ Excel ၏ INDEX နှင့် MATCH လုပ်ဆောင်ချက်များနှင့်အတူ ကြီးမားသောဒေတာအတွဲတွင်ပင် မည်သည့်ဒေတာအမျိုးအစားကိုမဆို ပြန်လည်ရယူနိုင်သည်။ VBA ကို အကောင်အထည်ဖော်ခြင်းသည် Excel တွင် မည်သည့်လုပ်ဆောင်ချက်ကိုမဆို လုပ်ဆောင်ရန် အထိရောက်ဆုံး၊ အမြန်ဆန်ဆုံးနှင့် အလုံခြုံဆုံးနည်းလမ်းဖြစ်သည်။ ဤဆောင်းပါးတွင်၊ VBA macro ဖြင့် Excel တွင် စံသတ်မှတ်ချက်များစွာအပေါ်အခြေခံ၍ INDEX MATCH ကို မည်သို့လုပ်ဆောင်ရမည်နည်း 3 နည်းလမ်းကို သင့်အား ပြသပါမည်။
ဒေါင်းလုဒ်လုပ်ပါ။ Workbook
သင်သည် ဤနေရာမှ အခမဲ့ လက်တွေ့ Excel workbook ကို ဒေါင်းလုဒ်လုပ်နိုင်ပါသည်။
VBA INDEX MATCH များစွာသော စံသတ်မှတ်ချက်များအပေါ်အခြေခံ၍ VBA INDEX MATCH
3 Excel တွင် စံသတ်မှတ်ချက်များစွာကို အခြေခံ၍ VBA INDEX MATCH ပါသော နည်းလမ်းများ
အောက်ပါကဏ္ဍများတွင်၊ အပိုင်းအခြားတစ်ခုအတွက် စံသတ်မှတ်ချက်များစွာကို အခြေခံ၍ INDEX MATCH ကို မည်သို့လုပ်ဆောင်ရမည်ကို သင်ပြသပါမည် ၊ တိကျသောရွေးချယ်မှုတစ်ခုအတွက် နှင့် ဇယားတစ်ခုအတွက် Excel တွင် VBA ။
အထက် ဤဆောင်းပါးတွင် လိုက်နာရမည့် ဒေတာအစုံရှိသည်။ ကျွန်ုပ်တို့တွင် ဒေတာအတွဲတွင် ကျောင်းသားတစ်ဦးစီ၏ ကျောင်းသားအမည် ၊ ကျောင်းသား ID၊ နှင့် စာမေးပွဲအမှတ်များ ရှိသည်။ အခြားကော်လံနှစ်ခုမှ အခြေအနေများကို အခြေခံ၍ ကော်လံတစ်ခုတွင်ရှိသော အချို့သောရလဒ်ကို ကျွန်ုပ်တို့ ထုတ်ယူပါမည်။
လိုအပ်ချက် – 1- Excel တွင် Multiple (Two) Dimensional Lookup အတွက် INDEX MATCH ဖြင့် VBA ကို ထည့်သွင်းပါ
အောက်ပါပုံကို သုံးသပ်ကြည့်ပါ။ ကျွန်ုပ်တို့သည် သီးခြားကျောင်းသား၏အမည် “ Edge” ကို ဆဲလ်တွင် သိမ်းဆည်းထားပါသည်။G4 ; Result in၊ Exam Marks ကို Cell G5 တွင် သိမ်းဆည်းထားပါသည်။ စာမေးပွဲအမှတ်များ ကော်လံတွင် ရှာဖွေပြီး အစွန်းများ Cell G6 တွင် ရရှိသော အမှတ်များ ကို သိမ်းဆည်းပါမည်။
ရှာဖွေရန် အဆင့်များသည် VBA ဖြင့် နှစ်ဘက်မြင် array နှင့် Excel တွင် INDEX နှင့် MATCH မှ ရလဒ်ထွက်သည် ကို အောက်တွင်ပေးထားပါသည်။
အဆင့်များ-
- အစတွင်၊ သင်၏ကီးဘုတ်ပေါ်ရှိ Alt + F11 ကိုနှိပ်ပါ သို့မဟုတ် သွားပါ တက်ဘ် ဆော့ဖ်ဝဲရေးသားသူ -> Visual Basic Editor ကိုဖွင့်ရန် Visual Basic ။
- နောက်တစ်ခု၊ ပေါ်လာသောကုဒ်ဝင်းဒိုးမှ၊ မီနူးဘား၊ Insert -> ကိုနှိပ်ပါ။ မော်ဂျူး ။
- ထို့နောက်၊ အောက်ပါကုဒ်ကို ကော်ပီကူးပြီး ကုဒ်ထဲသို့ ကူးထည့်ပါ ဝင်းဒိုး။
7542
သင့်ကုဒ်ကို ယခုဖွင့်ရန် အဆင်သင့်ဖြစ်ပါပြီ။
- ယခု သင့်ပေါ်တွင် F5 ကို နှိပ်ပါ။ ကီးဘုတ် သို့မဟုတ် မီနူးဘားမှ Run -> Sub/UserForm ကိုဖွင့်ပါ။ macro ကို run ရန် sub-menu bar ရှိ small Run icon ကို နှိပ်ရုံပင်။
ကုဒ်ကိုလုပ်ဆောင်ပြီးနောက်၊ ရလဒ်ကိုကြည့်ရန် အောက်ပါ gif ကိုကြည့်ပါ။
ရလဒ်အနေဖြင့်၊ “ Edge” တွင်ရှိသော အမှတ်အသားများ စာမေးပွဲ၊ 67 ကို Cell G7 တွင် ပြန်လည်ရယူထားပါသည်။
VBA ကုဒ် ရှင်းလင်းချက်
8962
Worksheet ၏ variable ကို သတ်မှတ်ခြင်း။
3409
အလုပ်စာရွက်အမည်ကို သိမ်းဆည်းပါ။ ကျွန်ုပ်တို့၏စာရွက်၏အမည်သည် "နှစ်ဘက်မြင်" ဖြစ်သည်၊ သင်ပေးသင့်သည်။သင်၏စာရင်းဇယားအရ အမည်ကို။
8507
ဤကုဒ်အပိုင်းအခြားသည် ရှာဖွေမှုအပိုင်းအခြားအဖြစ် C5:D14 ကို ရွေးချယ်သည်။ ထို့နောက် အကွာအဝေး B5:B14 တွင် ဆဲလ် G4 တွင် သိမ်းဆည်းထားသည့် ကိုက်ညီမှုကို ရှာဖွေပြီး ဆဲလ် G5 အပိုင်းအခြားရှိ တွင် သိမ်းဆည်းထားသည့် ကိုက်ညီမှုကို ရှာဖွေပါ C4:D4 နှင့် ရလဒ်ကို ဆဲလ် G6 သို့ ပေးပို့ပါ။
နောက်ထပ်ဖတ်ရန်- ရက်စွဲအပိုင်းအခြားအတွက် စံသတ်မှတ်ချက်များစွာဖြင့် INDEX MATCH ကို အသုံးပြုနည်း
လိုအပ်ချက် – 2- အသုံးပြုသူသတ်မှတ်ထားသောလုပ်ဆောင်ချက် (UDF) ဖြင့် INDEX မှ MATCH Value ကိုရှာဖွေရန် Macro ကိုသုံးပါ
ဒေတာအတွဲတစ်ခုမှ ကိုက်ညီသောတန်ဖိုးများကို သင်ထုတ်ယူနိုင်သည် အသုံးပြုသူသတ်မှတ်ထားသောလုပ်ဆောင်ချက် (UDF) ။ အောက်ဖော်ပြပါပုံမှ၊ ကျွန်ုပ်တို့လုပ်ဆောင်ရမည့်အရာမှာ၊ အချို့သောကျောင်းသား၏ ကျောင်းသား ID နှင့် စာမေးပွဲအမှတ်များ ကို ကျော်ဖြတ်ပြီး လုပ်ဆောင်ချက်သည် ကျွန်ုပ်တို့အား အမည်<ပေးမည်ဖြစ်သည်။ သီးသန့်ကျောင်းသား၏ 2>။
၎င်းကို ကျောင်းသားအမည် “Finn” ဖြင့် VBA အတွက် မည်သို့အောင်မြင်ရမည်ကို ကြည့်ကြပါစို့။
အဆင့်များ-
- အရင်ပြထားသည့်အတိုင်း၊ Developer တက်ဘ်မှ Visual Basic Editor ကိုဖွင့်ပြီး ကုဒ်ဝင်းဒိုးတွင် Module ကိုထည့်ပါ။
- ထို့နောက်၊ ကုဒ်ဝင်းဒိုးတွင် ကော်ပီ အောက်ပါကုဒ်ကို ကူးထည့်ကာ ၎င်းကို ကူးထည့်ပါ။
9582
- ဤကုဒ်ကိုမ run ပါနှင့် ၊ သိမ်းဆည်း ၎င်း။
- ယခု၊ စိတ်ပါဝင်စားသော အလုပ်စာရွက် သို့ ပြန်သွားပါ။ ရလဒ်ကို သိမ်းဆည်းလိုသော မည်သည့်ဆဲလ်ကိုမဆို ရွေးပါ ။ ကျွန်ုပ်တို့၏အခြေအနေတွင်၊ ၎င်းမှာ Cell F5 ဖြစ်သည်။
- ထိုဆဲလ်တွင်၊ သင်အား UDF ဟု ရေးပါ။ကုဒ် ( MatchByIndex ) တွင် ဖန်တီးထားပြီး လုပ်ဆောင်ချက်၏ ကွင်းအတွင်းရှိ သတ်မှတ်ထားသော ကျောင်းသား၏ ကျောင်းသား ID နှင့် စာမေးပွဲအမှတ်များ ကို ကျော်ဖြတ်ပါ။
အနေဖြင့် ကျွန်ုပ်တို့သည် သူ၏ ID (105) နှင့် Marks (84) မှ “ Finn” ကို ထုတ်ယူရန် ကြိုးစားနေသောကြောင့် ကျွန်ုပ်တို့၏ ကိစ္စအတွက် ဖော်မြူလာဖြစ်လာသည်၊
=MatchByIndex(105,84)
- ထို့နောက် Enter ကိုနှိပ်ပါ။
အောက်ပါပုံကိုကြည့်ပါ။
Cell F5 တွင်၊ “ Finn” ဟူသောအမည်ကို အောင်မြင်စွာပြန်လည်ရယူနိုင်ပါပြီ<2 VBA ကုဒ်တွင် ကျွန်ုပ်တို့ ဖန်တီးထားသော လုပ်ဆောင်ချက်အတွင်း သူ၏ ID နှင့် Marks ကို ဖြတ်သွားရုံဖြင့်။
VBA ကုဒ်ရှင်းလင်းချက်
5883
လုပ်ဆောင်ချက်အသစ်တစ်ခုကို ဖန်တီးခြင်းနှင့် ၎င်းအတွင်းရှိ ကိန်းရှင်များကို ဖြတ်သန်းခြင်း။ လုပ်ဆောင်ချက်အတွက် မည်သည့်အမည်ကိုမဆို သင်သတ်မှတ်နိုင်ပါသည်။
8492
ကျွန်ုပ်တို့၏အတန်းသည် အတန်းနံပါတ် 4 မှ စတင်ပါသည်။ သင့်ဒေတာအတွဲမှစတင်သည့် အတန်းနံပါတ်ကို သင်ပေးရပါမည်။
9613
variable များကို သတ်မှတ်ခြင်း။
2892
ပထမဦးစွာ၊ လုပ်ဆောင်ရန် အလုပ်စာရွက်ကို သတ်မှတ်ပါ။ ကျွန်ုပ်တို့၏စာရွက်အမည်မှာ "UDF" ဖြစ်ပြီး၊ သင်၏စာရင်းဇယားအရ အမည်ကို ပေးသင့်သည်။ ထို့နောက် ကျွန်ုပ်တို့သတ်မှတ်ထားသော ပထမအတန်းမှ နောက်ဆုံးအတန်းမှ C:D အကွာအဝေးတွင် စတင်ရှာဖွေပါ။
2999
ပထမအတန်းမှ နောက်ဆုံးအတန်းသို့ ထပ်လောင်းစတင်ပါ။ လုပ်ဆောင်ချက်အတွင်းမှ ကျွန်ုပ်တို့ဖြတ်သန်းမည့် ပထမတန်ဖိုးသည် C ကော်လံအတွင်း ကျရောက်ပါက၊ လုပ်ဆောင်ချက်အတွင်း ကျွန်ုပ်တို့ဖြတ်သန်းမည့် ဒုတိယတန်ဖိုးသည် D ကော်လံအတွင်း ကျရောက်ပါက၊ ၎င်းသည် ပြန်လည်ရောက်ရှိသွားမည်ဖြစ်သည်။ အဆိုပါ B ကော်လံမှ ကိုက်ညီသည်။ မဟုတ်ပါက လုပ်ဆောင်ချက်မှ ထွက်ပြီး ထုတ်ပြန်ချက်အားလုံးကို အဆုံးသတ်ပြီး နောက်တစ်ကြောင်းသို့ သွားပါ။
9794
လုပ်ဆောင်နေစဉ် ယခင်အခြေအနေ မပြည့်စုံပါက၊ "Data Not Found" မက်ဆေ့ဂျ်ကို ပြန်ပေးမည်ဖြစ်ပြီး၊ ကုဒ်သည် လုပ်ဆောင်ချက်ကို ချန်ထားခဲ့ပါမည်။
နောက်ထပ်ဖတ်ရန်- Excel တွင် တစ်စိတ်တစ်ပိုင်းစာသားအတွက် စံသတ်မှတ်ချက်များစွာပါသော INDEX-MATCH (နည်းလမ်း 2 ခု)
သတ်မှတ်ချက် – 3- Excel တွင် ဒေတာများစွာပါသော ဇယားမှ MATCH တန်ဖိုးကို ပြန်ပေးရန် VBA ကို အကောင်အထည်ဖော်ပါ
ဤကဏ္ဍတွင်၊ ဇယားတစ်ခုမှ အညွှန်းများဖြင့် ကိုက်ညီသောတန်ဖိုးကို မည်သို့ပြန်ဆိုရမည်ကို လေ့လာပါမည်။ MsgBox တွင် VBA Excel တွင်။
ကျွန်ုပ်တို့ရှိပြထားသည့်ဇယားမှ Marks ကို ထုတ်ယူနည်းကို ကြည့်ကြပါစို့။ ကုဒ်အတွင်းရှိ အမည် နှင့် ID ကို ပေးခြင်းဖြင့် ကျောင်းသားတစ်ဦး၏ ဒေတာအတွဲ ( T အမည်- TableMatch )။ ကျွန်ုပ်တို့၏ကိစ္စအတွက်၊ အမည် နှင့် ID သည် Finn နှင့် 105 အသီးသီးဖြစ်ပါမည်။
အဆင့်များ :
- ပထမဦးစွာ၊ Visual Basic Editor ကိုဖွင့်ပြီး Developer တက်ဘ်မှ Insert a Module ကုဒ်ဝင်းဒိုးတွင်။
- ထို့နောက်၊ ကော်ပီ အောက်ဖော်ပြပါကုဒ်ကို ကူးယူပြီး ၎င်းကို ကုဒ်ဝင်းဒိုးထဲသို့ ကူးထည့်ပါ။
4521
သင့်ကုဒ် ယခု လုပ်ဆောင်ရန် အဆင်သင့်ဖြစ်ပါပြီ။
- နောက်ပိုင်းတွင်၊ ဤကုဒ်ကို လုပ်ဆောင်ပါ ရလဒ်အဖြစ် ဖြစ်ပျက်ခဲ့သည်ကို ကြည့်ရန် အောက်ပါပုံတွင် ကြည့်ရှုပါ။
အထက်ပုံမှမြင်ရသည့်အတိုင်း၊ Microsoft Excel ပေါ်လာသည်-ကုဒ်အတွင်း ကျွန်ုပ်တို့ပေးထားသော ID: 105 နှင့် အမည်- Finn ၏ Marks: 84 ကို သင့်အား ပြသပေးပါသည်။
VBA ကုဒ်ရှင်းလင်းချက်
8342
ကိန်းရှင်များကို သတ်မှတ်ခြင်း။
8623
ကိန်းရှင်များတွင် စာရွက်အမည်နှင့် ဇယားအမည်ကို သတ်မှတ်ခြင်း။
1808
သိမ်းဆည်းခြင်း ရှာဖွေမှုတန်ဖိုးများနှင့် ရှာဖွေရန်ရှာဖွေရေးကော်လံများ။
5295
ဤကုဒ်အပိုင်းအစသည် စာခွဲ၏အစမှအဆုံးအထိ စကင်န်ဖတ်ပြီး သတ်မှတ်ထားသော ID နှင့် ရှာဖွေရေးကော်လံများတွင် အမည်ကို ကိုက်ညီမှုရှိမရှိ တွေ့ရှိပါက၊ ရလဒ်ကိုသိမ်းဆည်းပြီးထုတ်ပြန်ချက်အားလုံးကိုပိတ်ပါ။ ထို့အပြင်၊ ထပ်လောင်းခြင်းမှထွက်ပြီး ကုဒ်၏နောက်အပိုင်းသို့သွားပါ။
6719
ရလဒ်ကို MsgBox ထဲသို့ထည့်ပါ။
Read More- ရှာဖွေခြင်းနှင့် ပြန်ခြင်း Excel ရှိ ဆဲလ်တစ်ခုထဲသို့ ပေါင်းစပ်ထားသော တန်ဖိုးများစွာ
နိဂုံး
နိဂုံးချုပ်ရန်၊ ဤဆောင်းပါးတွင် သင့်အား INDEX MATCH ကို အခြေခံ၍ လုပ်ဆောင်ရမည့် နည်းလမ်း ၃ ခုကို ပြသထားသည်။ VBA macro ဖြင့် Excel ရှိ စံသတ်မှတ်ချက်များစွာတွင် ။ ဤဆောင်းပါးသည် သင့်အတွက် အလွန်အကျိုးရှိမည်ဟု မျှော်လင့်ပါသည်။ ခေါင်းစဉ်နှင့်ပတ်သက်သည့် မေးခွန်းများကို လွတ်လပ်စွာမေးနိုင်ပါသည်။