VBA ရှိ "လုပ်ဆောင်ချက်" နှင့် "ခွဲ" လုပ်ထုံးလုပ်နည်းများ

မာတိကာ

Built-in VBA လုပ်ဆောင်ချက်များ

သင့်ကိုယ်ပိုင် VBA လုပ်ဆောင်ချက်များကို သင်မဖန်တီးမီ၊ Excel VBA တွင် သင့်ကုဒ်ကိုရေးနေစဉ်တွင် သင်အသုံးပြုနိုင်သည့် ကြိုတင်တည်ဆောက်ထားသော လုပ်ဆောင်ချက်များစွာ စုစည်းထားသည်ကို သိထားရန် ကောင်းပါတယ်။

ဤလုပ်ဆောင်ချက်များစာရင်းကို VBA တည်းဖြတ်မှုတွင် ကြည့်ရှုနိုင်သည်-

  • Excel အလုပ်စာအုပ်ကိုဖွင့်ပြီး VBA တည်းဖြတ်သူကိုဖွင့်ပါ (ဤသို့လုပ်ဆောင်ရန် နှိပ်ပါ။ alt + F11), ပြီးတော့ကိုနှိပ်ပါ F2.
  • စခရင်၏ဘယ်ဘက်အပေါ်ရှိ dropdown list မှစာကြည့်တိုက်တစ်ခုကိုရွေးချယ်ပါ။ VBA.
  • Built-in VBA အတန်းများနှင့် လုပ်ဆောင်ချက်များစာရင်း ပေါ်လာပါမည်။ ဝင်းဒိုးအောက်ခြေရှိ ၎င်း၏အကျဉ်းဖော်ပြချက်ကို ပြသရန် လုပ်ဆောင်ချက်အမည်ကို နှိပ်ပါ။ နှိပ်ခြင်း။ F1 ထိုအင်္ဂါရပ်အတွက် အွန်လိုင်းအကူအညီ စာမျက်နှာကို ဖွင့်ပါမည်။

ထို့အပြင်၊ ဥပမာများပါရှိသော built-in VBA လုပ်ဆောင်ချက်များ၏စာရင်းအပြည့်အစုံကို Visual Basic Developer Center တွင်တွေ့နိုင်ပါသည်။

VBA တွင် "Function" နှင့် "Sub" စိတ်ကြိုက်လုပ်ထုံးလုပ်နည်းများ

Excel Visual Basic တွင်၊ သီးခြားလုပ်ငန်းတစ်ခုလုပ်ဆောင်သည့် command အစုံကို လုပ်ထုံးလုပ်နည်းတစ်ခုတွင် ထည့်သွင်းထားသည်။ လုပ်ဆောင်ချက် (Function) သို့မဟုတ် sub (ပုံမှန်)။ လုပ်ထုံးလုပ်နည်းများအကြား အဓိကကွာခြားချက် လုပ်ဆောင်ချက် и sub အဲဒါက လုပ်ထုံးလုပ်နည်းပဲ။ လုပ်ဆောင်ချက် ရလဒ်၊ လုပ်ထုံးလုပ်နည်းကို ပြန်ပေးသည်။ sub – မဟုတ်ဘူး။

ထို့ကြောင့် သင်သည် လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ရန်နှင့် ရလဒ်အချို့ကို ရယူရန် လိုအပ်ပါက (ဥပမာ၊ ကိန်းဂဏန်းများစွာကို ပေါင်းစည်းရန်) လုပ်ငန်းစဉ်ကို အများအားဖြင့် အသုံးပြုပါသည်။ လုပ်ဆောင်ချက်နှင့် အချို့သောလုပ်ဆောင်ချက်များကို ရိုးရှင်းစွာလုပ်ဆောင်နိုင်ရန် (ဥပမာ၊ ဆဲလ်အုပ်စုတစ်ခု၏ ဖော်မတ်ကိုပြောင်းလဲခြင်း)၊ သင်လုပ်ထုံးလုပ်နည်းကို ရွေးချယ်ရန် လိုအပ်ပါသည်။ sub.

အငြင်းပွားမှုများ

အငြင်းအခုံများကို အသုံးပြု၍ အမျိုးမျိုးသောဒေတာများကို VBA လုပ်ထုံးလုပ်နည်းများသို့ ပေးပို့နိုင်ပါသည်။ လုပ်ထုံးလုပ်နည်းတစ်ခုကို ကြေငြာသည့်အခါ အငြင်းအခုံစာရင်းကို သတ်မှတ်သည်။ ဥပမာ၊ လုပ်ထုံးလုပ်နည်း sub VBA တွင် ပေးထားသော ကိန်းပြည့် (Integer) ကို ရွေးချယ်ထားသော အပိုင်းအခြားရှိ ဆဲလ်တစ်ခုစီသို့ ပေါင်းထည့်သည်။ ဤနံပါတ်ကဲ့သို့ အငြင်းအခုံတစ်ခုကို အသုံးပြု၍ ဤနံပါတ်ကို လုပ်ထုံးလုပ်နည်းသို့ သင်ဖြတ်သန်းနိုင်သည်-

Sub AddToCells(i As Integer) ... End Sub

လုပ်ထုံးလုပ်နည်းများအတွက် ငြင်းခုံမှုများရှိခြင်းကို သတိပြုပါ။ လုပ်ဆောင်ချက် и sub VBA တွင် ရွေးချယ်နိုင်သည်။ အချို့သောလုပ်ထုံးလုပ်နည်းများသည် ငြင်းခုံရန်မလိုအပ်ပါ။

ရွေးချယ်နိုင်သော ဆင်ခြေများ

VBA လုပ်ထုံးလုပ်နည်းများတွင် ရွေးချယ်နိုင်သော အကြောင်းပြချက်များ ရှိနိုင်သည်။ ဤအရာများသည် အသုံးပြုသူမှ အလိုရှိလျှင် သတ်မှတ်ပေးနိုင်သော အကြောင်းပြချက်များဖြစ်ပြီး ၎င်းတို့ကို ချန်လှပ်ထားလျှင် လုပ်ငန်းစဉ်သည် ၎င်းတို့အတွက် ပုံသေတန်ဖိုးများကို အသုံးပြုပါသည်။

ယခင်နမူနာသို့ ပြန်သွားသောအခါ၊ ကိန်းပြည့်အငြင်းအခုံတစ်ခုအား လုပ်ဆောင်ချက်ရွေးချယ်ခွင့်တစ်ခုသို့ ပြုလုပ်ရန်၊ ၎င်းကို ဤကဲ့သို့ကြေညာရလိမ့်မည်-

Sub AddToCells(ချန်လှပ်ထားသော i As Integer = 0)

ဤကိစ္စတွင်၊ ကိန်းပြည့်အငြင်းအခုံ i default သည် 0 ဖြစ်လိမ့်မည်။

လုပ်ထုံးလုပ်နည်းတစ်ခုတွင် ရွေးချယ်နိုင်သော အကြောင်းပြချက်များစွာရှိနိုင်သည်၊ ၎င်းတို့အားလုံးကို အငြင်းအခုံစာရင်း၏အဆုံးတွင် ဖော်ပြထားပါသည်။

တန်ဘိုးနှင့် ရည်ညွှန်းချက်ဖြင့် ငြင်းခုံမှုများကို ဖြတ်သန်းပါ။

VBA ရှိ ငြင်းခုံချက်များကို နည်းလမ်းနှစ်ခုဖြင့် လုပ်ထုံးလုပ်နည်းတစ်ခုသို့ ပေးပို့နိုင်သည်။

  • ByVal - တန်ဘိုးဖြင့် အငြင်းအခုံတစ်ခုကို ကျော်ဖြတ်ခြင်း။ ဆိုလိုသည်မှာ တန်ဖိုး (အငြင်းပွားမှု၏ မိတ္တူ) သည် လုပ်ထုံးလုပ်နည်းသို့သာ ကူးသွားသည်၊ ထို့ကြောင့် လုပ်ထုံးလုပ်နည်းအတွင်းမှ အငြင်းအခုံပြုသော ပြောင်းလဲမှုမှန်သမျှသည် လုပ်ထုံးလုပ်နည်းမှ ထွက်သည့်အခါ ဆုံးရှုံးသွားမည်ဖြစ်သည်။
  • ByRef - အကိုးအကားဖြင့် အငြင်းအခုံတစ်ခုကို ကျော်ဖြတ်ခြင်း။ ဆိုလိုသည်မှာ၊ မှတ်ဉာဏ်ရှိ အငြင်းအခုံတည်နေရာ၏ အမှန်တကယ်လိပ်စာကို လုပ်ထုံးလုပ်နည်းသို့ ပေးပို့သည်။ လုပ်ထုံးလုပ်နည်းအတွင်း အငြင်းအခုံတစ်ခုအတွက် ပြုလုပ်ထားသော ပြောင်းလဲမှုမှန်သမျှကို လုပ်ထုံးလုပ်နည်းမှ ထွက်သည့်အခါ သိမ်းဆည်းပါမည်။

အဓိကစကားလုံးများကိုအသုံးပြုခြင်း။ ByVal or ByRef လုပ်ထုံးလုပ်နည်း ကြေငြာချက်တွင်၊ သင်သည် လုပ်ထုံးလုပ်နည်းသို့ အငြင်းအခုံကို မည်သို့ဖြတ်သန်းကြောင်း သတ်မှတ်နိုင်သည်။ ၎င်းကို အောက်ပါ ဥပမာများတွင် ပြထားသည်။

Sub AddToCells(ByVal i As Integer) ... End Sub
ဤကိစ္စတွင်၊ ကိန်းပြည့်အငြင်းအခုံ i တန်ဖိုးဖြတ်သွားသည် ။ လုပ်ထုံးလုပ်နည်းက ထွက်သွားပြီးနောက် sub အားလုံးနဲ့လုပ်ထားတယ်။ i အပြောင်းအလဲများ ဆုံးရှုံးမည်။
Sub AddToCells(ByRef i As Integer) ... End Sub
ဤကိစ္စတွင်၊ ကိန်းပြည့်အငြင်းအခုံ i အကိုးအကားဖြင့် ဖြတ်သန်းခဲ့သည်။ လုပ်ထုံးလုပ်နည်းက ထွက်သွားပြီးနောက် sub အားလုံးနဲ့လုပ်ထားတယ်။ i အပြောင်းအလဲများကို လုပ်ထုံးလုပ်နည်းသို့ပေးပို့သော variable တွင် သိမ်းဆည်းထားမည်ဖြစ်သည်။ sub.

VBA ရှိ ငြင်းခုံချက်များကို မူရင်းအတိုင်း အကိုးအကားဖြင့် ကျော်သွားသည်ကို သတိရပါ။ တစ်နည်းဆိုရသော် သော့ချက်စာလုံးများကို အသုံးမပြုပါ။ ByVal or ByRefသို့ဆိုလျှင် ငြင်းခုံမှုကို အကိုးအကားဖြင့် ကျော်ဖြတ်ပါမည်။

လုပ်ထုံးလုပ်နည်းများ မဆောင်ရွက်မီ လုပ်ဆောင်ချက် и sub ပိုမိုအသေးစိတ်အားဖြင့်၊ ဤလုပ်ထုံးလုပ်နည်းနှစ်ခုကြားရှိ အင်္ဂါရပ်များနှင့် ကွဲပြားမှုများကို နောက်တစ်ကြိမ်ကြည့်ရှုရန် အသုံးဝင်ပါလိမ့်မည်။ အောက်ပါတို့သည် VBA လုပ်ထုံးလုပ်နည်းများ၏ အတိုချုံး ဆွေးနွေးချက်များဖြစ်သည်။ လုပ်ဆောင်ချက် и sub နှင့် ရိုးရှင်းသော ဥပမာများကို ပြသထားသည်။

VBA လုပ်ငန်းစဉ် "Function"

VBA တည်းဖြတ်သူသည် လုပ်ထုံးလုပ်နည်းကို အသိအမှတ်ပြုသည်။ လုပ်ဆောင်ချက်အောက်ဖော်ပြပါ အဖွင့်နှင့် အပိတ်ဖော်ပြချက်များကြားတွင် ထည့်သွင်းထားသော command အုပ်စုတစ်စုကို တွေ့သောအခါ၊

Function ... End Function

စောစောကပြောခဲ့သလို လုပ်ထုံးလုပ်နည်း လုပ်ဆောင်ချက် VBA တွင် (ဆန့်ကျင်ဘက်ဖြစ်သည်။ sub) တန်ဖိုးတစ်ခု ပြန်ပေးသည်။ တန်ဖိုးများကို ပြန်ပေးရန်အတွက် အောက်ပါစည်းမျဉ်းများ သက်ရောက်သည်-

  • လုပ်ငန်းစဉ်၏ ခေါင်းစီးတွင် ပြန်တန်ဖိုး၏ ဒေတာအမျိုးအစားကို ကြေညာရပါမည်။ လုပ်ဆောင်ချက်.
  • return value ပါရှိသော variable ကို process နှင့် အတူတူ အမည်ပေးရပါမည်။ လုပ်ဆောင်ချက်. ဤကိန်းရှင်သည် လုပ်ထုံးလုပ်နည်း၏ အစိတ်အပိုင်းတစ်ခုအဖြစ် အမြဲတမ်းတည်ရှိနေသောကြောင့် သီးခြားစီဖော်ပြရန်မလိုအပ်ပါ။ လုပ်ဆောင်ချက်.

ယင်းကို အောက်ပါဥပမာတွင် ကောင်းစွာဖော်ပြထားသည်။

VBA Function ဥပမာ- ဂဏန်း ၃ လုံးဖြင့် သင်္ချာဆိုင်ရာ လုပ်ဆောင်ချက်ကို လုပ်ဆောင်ခြင်း။

အောက်ဖော်ပြပါသည် VBA လုပ်ငန်းစဉ်ကုဒ်၏ ဥပမာတစ်ခုဖြစ်သည်။ လုပ်ဆောင်ချက်အမျိုးအစား၏ ငြင်းခုံမှု သုံးခုကို ယူသည်။ နှစ်ချက် (နှစ်ထပ်-တိကျသော ရေပေါ်အမှတ်နံပါတ်များ)။ ရလဒ်အနေဖြင့်၊ လုပ်ထုံးလုပ်နည်းသည် အခြားအမျိုးအစားအရေအတွက်ကို ပြန်ပေးသည်။ နှစ်ချက်ပထမအငြင်းအခုံနှစ်ခု၏ ပေါင်းလဒ်နှင့် ညီမျှသည်-

လုပ်ဆောင်ချက် SumMinus(dNum1 နှစ်ဆ၊ dNum2 နှစ်ဆ၊ dNum3 နှစ်ဆအဖြစ်) နှစ်ဆ SumMinus = dNum1 + dNum2 - dNum3 အဆုံးလုပ်ဆောင်ချက်

ဤအလွန်ရိုးရှင်းသော VBA လုပ်ထုံးလုပ်နည်း လုပ်ဆောင်ချက် အငြင်းအခုံများမှတဆင့် ဒေတာကို လုပ်ထုံးလုပ်နည်းတစ်ခုသို့ မည်ကဲ့သို့ ပေးပို့သည်ကို သရုပ်ဖော်သည်။ လုပ်ထုံးလုပ်နည်းအားဖြင့် ပြန်ပေးသော ဒေတာအမျိုးအစားကို သင်တွေ့မြင်နိုင်သည်။ နှစ်ချက် (စကားက ပြောတာ။ နှစ်ချက် ငြင်းခုံမှုစာရင်းပြီးနောက်) ။ ဤဥပမာသည် လုပ်ထုံးလုပ်နည်း၏ ရလဒ်ကို မည်ကဲ့သို့ ပြသည် လုပ်ဆောင်ချက် လုပ်ထုံးလုပ်နည်းအမည်နှင့် တူညီသောအမည်ဖြင့် ကိန်းရှင်တစ်ခုတွင် သိမ်းဆည်းထားသည်။

VBA လုပ်ငန်းစဉ်ကို “Function” ဟုခေါ်သည်

အပေါ်က လုပ်ထုံးလုပ်နည်း ရိုးရှင်းတယ်ဆိုရင် လုပ်ဆောင်ချက် Visual Basic တည်းဖြတ်မှုတွင် မော်ဂျူးတစ်ခုတွင် ထည့်သွင်းထားပြီး၊ ၎င်းကို အခြားသော VBA လုပ်ထုံးလုပ်နည်းများမှ ခေါ်ဆိုနိုင်သည် သို့မဟုတ် Excel workbook ရှိ worksheet တစ်ခုတွင် အသုံးပြုနိုင်သည်။

အခြားလုပ်ထုံးလုပ်နည်းတစ်ခုမှ VBA လုပ်ငန်းစဉ် “Function” ကိုခေါ်ဆိုပါ။

လုပ်ထုံးလုပ်နည်း လုပ်ဆောင်ချက် ထိုလုပ်ထုံးလုပ်နည်းကို ကိန်းရှင်တစ်ခုသို့ သတ်မှတ်ပေးရုံဖြင့် အခြား VBA လုပ်ထုံးလုပ်နည်းမှ ခေါ်ဆိုနိုင်သည်။ အောက်ဖော်ပြပါ ဥပမာသည် လုပ်ထုံးလုပ်နည်းတစ်ခုသို့ ခေါ်ဆိုမှုကို ပြသသည်။ အနှစ်ချုပ်၊ အထက်တွင်သတ်မှတ်ခဲ့သည်။

Sub main() စုစုပေါင်း နှစ်ဆအဖြစ် Dim စုစုပေါင်း = SumMinus(5၊ 4၊ 3) End Sub

အလုပ်စာရွက်မှ VBA လုပ်ထုံးလုပ်နည်း “Function” ကိုခေါ်ဆိုပါ။

VBA လုပ်ထုံးလုပ်နည်း လုပ်ဆောင်ချက် အခြား built-in Excel လုပ်ဆောင်မှုကဲ့သို့ပင် Excel worksheet မှခေါ်ဆိုနိုင်သည်။ ထို့ကြောင့်ယခင်ဥပမာတွင်ဖန်တီးထားသောလုပ်ထုံးလုပ်နည်း လုပ်ဆောင်ချက် - အနှစ်ချုပ် အောက်ဖော်ပြပါ စကားရပ်ကို worksheet cell တစ်ခုထဲသို့ ထည့်ခြင်းဖြင့် ခေါ်ဆိုနိုင်ပါသည်။

=SumMinus(10, 5, 2)

VBA လုပ်ထုံးလုပ်နည်း «ခွဲ»

VBA တည်းဖြတ်သူသည် ၎င်းရှေ့တွင် လုပ်ထုံးလုပ်နည်းတစ်ခုရှိကြောင်း နားလည်သည်။ subအောက်ဖော်ပြပါ အဖွင့်နှင့် အပိတ်ဖော်ပြချက်များကြားတွင် ထည့်သွင်းထားသော command အုပ်စုတစ်စုကို တွေ့သောအခါ၊

Sub ... End Sub

VBA လုပ်ထုံးလုပ်နည်း “Sub”- ဥပမာ 1. ရွေးချယ်ထားသော ဆဲလ်အကွာအဝေးတွင် အလယ်တန်းညှိခြင်းနှင့် ဖောင့်အရွယ်အစား ပြောင်းလဲခြင်း။

ရိုးရှင်းသော VBA လုပ်ထုံးလုပ်နည်း၏ ဥပမာတစ်ခုကို သုံးသပ်ကြည့်ပါ။ sub၎င်း၏တာဝန်မှာ ရွေးချယ်ထားသော ဆဲလ်အကွာအဝေး၏ ဖော်မတ်ချခြင်းကို ပြောင်းလဲရန်ဖြစ်သည်။ ဆဲလ်များကို ဗဟိုပြုသည် (ဒေါင်လိုက်နှင့် အလျားလိုက်) ရှိပြီး ဖောင့်အရွယ်အစားကို အသုံးပြုသူသတ်မှတ်ထားသော ပုံစံသို့ ပြောင်းလဲထားသည်။

Sub Format_Centered_And_Sized(ချန်လှပ်နိုင်သော iFontSize As Integer = 10) Selection.HorizontalAlignment = xlCenter Selection.VerticalAlignment = xlCenter Selection.Font.Size = iFontSize End Sub

ဒီလုပ်ထုံးလုပ်နည်း sub လုပ်ဆောင်ချက်များကို လုပ်ဆောင်သော်လည်း ရလဒ်ကို မရရှိပါ။

ဤဥပမာသည် စိတ်ကြိုက်ရွေးချယ်နိုင်သော အငြင်းအခုံတစ်ခုကိုလည်း အသုံးပြုပါသည်။ ဖောင့်အရွယ်အစား. အငြင်းအခုံဖြစ်လျှင် ဖောင့်အရွယ်အစား လုပ်ထုံးလုပ်နည်းအရ မအောင်မြင်ဘူး။ sub, ထို့နောက်၎င်း၏ default value သည် 10. သို့သော်၊ အငြင်းအခုံဖြစ်လျှင် ဖောင့်အရွယ်အစား လုပ်ထုံးလုပ်နည်းကို ကျော်လွန်သွားတယ်။ subထို့နောက် ရွေးချယ်ထားသော ဆဲလ်အကွာအဝေးကို အသုံးပြုသူသတ်မှတ်ထားသည့် ဖောင့်အရွယ်အစားအဖြစ် သတ်မှတ်မည်ဖြစ်သည်။

VBA လုပ်ငန်းစဉ်ခွဲ- ဥပမာ 2- ရွေးချယ်ထားသော ဆဲလ်များ၏အကွာအဝေးတွင် အလယ်တည့်တည့် ညှိပြီး စာလုံးထူ

အောက်ပါလုပ်ထုံးလုပ်နည်းသည် ခုနက ဆွေးနွေးထားသည့်အရာနှင့် ဆင်တူသည်၊ သို့သော် ယခုတစ်ကြိမ်တွင်၊ အရွယ်အစားပြောင်းမည့်အစား ၎င်းသည် ရွေးချယ်ထားသောဆဲလ်များ၏အကွာအဝေးအတွက် ရဲရင့်သောဖောင့်စတိုင်ကို အသုံးပြုသည်။ ဒါက နမူနာလုပ်ထုံးလုပ်နည်းတစ်ခုပါ။ subငြင်းခုံစရာမရှိသော၊

Sub Format_Centered_And_Bold() Selection.HorizontalAlignment = xlCenter Selection.VerticalAlignment = xlCenter Selection.Font.Bold = True End Sub

Excel VBA တွင် "Sub" လုပ်ငန်းစဉ်ကိုခေါ်ဆိုခြင်း။

အခြားလုပ်ထုံးလုပ်နည်းတစ်ခုမှ VBA လုပ်ငန်းစဉ် “Sub” ကိုခေါ်ဆိုပါ။

VBA လုပ်ထုံးလုပ်နည်းကို ခေါ်ရန် sub အခြား VBA လုပ်ထုံးလုပ်နည်းမှ၊ သင်သည် keyword ကိုရေးရန်လိုအပ်သည်။ ခေါ်ရန်၊ လုပ်ထုံးလုပ်နည်းအမည် sub ကွင်းစဥ်များတွင် နောက်ထပ် အကြောင်းပြချက်များသည် လုပ်ထုံးလုပ်နည်း၏ အကြောင်းပြချက်များဖြစ်သည်။ ၎င်းကို အောက်ပါ ဥပမာတွင် ပြထားသည်။

Sub main() Call Format_Centered_And_Sized(20) End Sub

လုပ်ထုံးလုပ်နည်းအရဆိုလျှင် Format_Centered_And_Sized အငြင်းအခုံတစ်ခုထက်ပို၍ ၎င်းတို့ကို ကော်မာများဖြင့် ပိုင်းခြားရပါမည်။ ဒီလိုမျိုး:

Sub main() ခေါ်ဆိုမှု Format_Centered_And_Sized(arg1၊ arg2၊ ...) ကဏ္ဍခွဲအဆုံးသတ်

အလုပ်စာရွက်မှ VBA လုပ်ငန်းစဉ် "Sub" ကိုခေါ်ဆိုပါ။

လုပ်ထုံးလုပ်နည်း sub လုပ်ထုံးလုပ်နည်းတစ်ခုဖြင့်လုပ်ဆောင်နိုင်သကဲ့သို့ Excel စာရွက်ဆဲလ်ထဲသို့တိုက်ရိုက်ထည့်၍မရပါ။ လုပ်ဆောင်ချက်လုပ်ထုံးလုပ်နည်းကြောင့် sub တန်ဖိုးတစ်ခုမပြန်ပါ။ သို့သော် လုပ်ထုံးလုပ်နည်းများ subအငြင်းအခုံမရှိသော၊ အဖြစ်ကြေငြာသည်။ ပြည်သူ့ (အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း) အလုပ်စာရွက်အသုံးပြုသူများ ရရှိနိုင်ပါသည်။ ထို့ကြောင့် အထက်တွင် ဆွေးနွေးခဲ့သော ရိုးရှင်းသော လုပ်ထုံးလုပ်နည်းများ ရှိလျှင် sub လုပ်ထုံးလုပ်နည်း Visual Basic Editor တွင် module တစ်ခုထဲသို့ ထည့်သွင်းထားသည်။ Format_Centered_And_Bold Excel worksheet နှင့် လုပ်ထုံးလုပ်နည်းတစ်ခုတွင် အသုံးပြုရန်အတွက် ရနိုင်မည်ဖြစ်သည်။ Format_Centered_And_Sized - ငြင်းခုံမှုများရှိနေ၍ မရနိုင်ပါ။

ဤသည်မှာ လုပ်ထုံးလုပ်နည်းတစ်ခုကို လုပ်ဆောင်ရန် (သို့မဟုတ်) လုပ်ဆောင်ရန် လွယ်ကူသောနည်းလမ်းဖြစ်သည်။ subအလုပ်စာရွက်မှ ဝင်ရောက်ကြည့်ရှုနိုင်သည်-

  • စာနယ်ဇင်းများ alt + F8 (သော့ကိုနှိပ်ပါ။ alt ဖိထားပြီး ခလုတ်ကို နှိပ်ပါ။ F8).
  • ပေါ်လာသည့် မက်ခရိုများစာရင်းတွင်၊ သင်လုပ်ဆောင်လိုသည့်တစ်ခုကို ရွေးပါ။
  • စာနယ်ဇင်းများ ပွေးသှား (ပြေး)

လုပ်ထုံးလုပ်နည်းတစ်ခုလုပ်ဆောင်ရန် sub လွယ်ကူလျင်မြန်စွာ၊ သင်သည် ၎င်းကို ကီးဘုတ်ဖြတ်လမ်းတစ်ခု သတ်မှတ်ပေးနိုင်ပါသည်။ ဒါအတွက်:

  • စာနယ်ဇင်းများ alt + F8.
  • ပေါ်လာသည့် မက်ခရိုများစာရင်းတွင်၊ သင်ကီးဘုတ်ဖြတ်လမ်းကို သတ်မှတ်ပေးလိုသည့်တစ်ခုကို ရွေးပါ။
  • စာနယ်ဇင်းများ parameters (ရွေးချယ်စရာများ) နှင့် ပေါ်လာသော ဒိုင်ယာလော့ဘောက်စ်တွင်၊ ကီးဘုတ်ဖြတ်လမ်းကို ရိုက်ထည့်ပါ။
  • စာနယ်ဇင်းများ OK ဒိုင်ယာလော့ခ်ကို ပိတ်ပါ။ မက္ကရို (မက်ခရို)။

အာရုံစူးစိုက်မှု: ကီးဘုတ်ဖြတ်လမ်းတစ်ခုကို မက်ခရိုတစ်ခုသို့ သတ်မှတ်သည့်အခါ၊ ၎င်းကို Excel တွင် စံအဖြစ်အသုံးမပြုကြောင်း သေချာပါစေ။ (ဥပမာ၊ ပြီးရင် Ctrl + C ကို) ရှိပြီးသား ကီးဘုတ်ဖြတ်လမ်းကို သင်ရွေးချယ်ပါက၊ ၎င်းကို မက်ခရိုသို့ ပြန်လည်သတ်မှတ်ပေးမည်ဖြစ်ပြီး ရလဒ်အနေဖြင့် အသုံးပြုသူသည် မက်ခရိုကို မတော်တဆ စတင်နိုင်ပါသည်။

VBA လုပ်ထုံးလုပ်နည်း နယ်ပယ်

ဤသင်ခန်းစာ၏ အပိုင်း 2 တွင် ကိန်းသေများနှင့် ကိန်းသေများ၏ နယ်ပယ်နှင့် အဓိကစကားလုံးများ၏ အခန်းကဏ္ဍကို ဆွေးနွေးထားသည်။ ပြည်သူ့ и ကိုယ်ပိုင်. ဤသော့ချက်စာလုံးများကို VBA လုပ်ထုံးလုပ်နည်းများဖြင့်လည်း အသုံးပြုနိုင်ပါသည်။

Public Sub AddToCells(i As Integer) ... End Sub
အကယ်၍ လုပ်ထုံးလုပ်နည်း ကြေငြာချက်သည် သော့ချက်စကားလုံး၏ ရှေ့တွင်ဖြစ်သည်။ ပြည်သူ့ထို့နောက် အဆိုပါ VBA ပရောဂျက်ရှိ မော်ဂျူးများအားလုံးတွင် လုပ်ထုံးလုပ်နည်းကို ရနိုင်မည်ဖြစ်သည်။
သီးသန့် Sub AddToCells(i As Integer) ... End Sub
အကယ်၍ လုပ်ထုံးလုပ်နည်း ကြေငြာချက်သည် သော့ချက်စကားလုံး၏ ရှေ့တွင်ဖြစ်သည်။ ကိုယ်ပိုင်ထို့နောက် ဤလုပ်ငန်းစဉ်သည် လက်ရှိ module အတွက်သာ ရနိုင်ပါမည်။ အခြား module တစ်ခုတွင်ရှိနေစဉ် သို့မဟုတ် Excel workbook မှ ၎င်းကိုခေါ်ဆို၍မရပါ။

VBA လုပ်ထုံးလုပ်နည်းကို မကြေငြာခင်မှာ သတိပြုပါ။ လုပ်ဆောင်ချက် or sub သော့ချက်စကားလုံးကို ထည့်သွင်းမထားပါ၊ လုပ်ထုံးလုပ်နည်းအတွက် ပုံသေပိုင်ဆိုင်မှုကို သတ်မှတ်ထားသည်။ ပြည်သူ့ (ဆိုလိုသည်မှာ ဤ VBA ပရောဂျက်တွင် နေရာတိုင်းတွင် ရနိုင်ပါမည်)။ ၎င်းသည် ပုံမှန်အားဖြင့် ကွဲပြားသော ကြေငြာချက်များနှင့် ဆန့်ကျင်ဘက်ဖြစ်သည်။ ကိုယ်ပိုင်.

VBA လုပ်ထုံးလုပ်နည်း "Function" နှင့် "Sub" မှ စောစောထွက်ပါ

အကယ်၍ သင်သည် VBA လုပ်ထုံးလုပ်နည်းကို အကောင်အထည်ဖော်ရန် လိုအပ်ပါက၊ လုပ်ဆောင်ချက် or sub၎င်း၏သဘာဝအဆုံးသတ်ကိုမစောင့်ဘဲ၊ ထို့နောက်ဤအတွက်အော်ပရေတာများရှိသည်။ Function မှထွက်ပါ။ и Sub Subit. ဤအော်ပရေတာများ၏အသုံးပြုမှုကို နမူနာအဖြစ် ရိုးရှင်းသောလုပ်ထုံးလုပ်နည်းကို အသုံးပြု၍ အောက်တွင်ဖော်ပြထားသည်။ လုပ်ဆောင်ချက်နောက်ထပ်လုပ်ဆောင်မှုများကို လုပ်ဆောင်ရန် အပြုသဘောဆောင်သော ငြင်းခုံချက်ကို လက်ခံရရှိရန် မျှော်လင့်သော A။ အပြုသဘောမဆောင်သောတန်ဖိုးကို လုပ်ငန်းစဉ်သို့ကျော်သွားပါက၊ နောက်ဆက်တွဲလုပ်ဆောင်မှုများကို လုပ်ဆောင်နိုင်မည်မဟုတ်သောကြောင့် အသုံးပြုသူကို error message တစ်ခုပြသသင့်ပြီး လုပ်ငန်းစဉ်သည် ချက်ချင်းထွက်သင့်သည်-

လုပ်ဆောင်ချက် VAT_Amount(sVAT_Rate As Single) As Single VAT_Amount = 0 အကယ်၍ sVAT_Rate <= 0 ထို့နောက် MsgBox "အပြုသဘောဆောင်သောတန်ဖိုးကို sVAT_Rate မျှော်မှန်းထားသော်လည်း လက်ခံရရှိသည်" & sVAT_Rate ထွက်ရန် လုပ်ဆောင်ချက် ပြီးဆုံးပါက ... လုပ်ဆောင်ချက် ပြီးဆုံးမည်

လုပ်ထုံးလုပ်နည်းမပြီးမီ သတိပြုပါ။ လုပ်ဆောင်ချက် - VAT_ပမာဏကုဒ်ထဲသို့ built-in VBA လုပ်ဆောင်ချက်ကို ထည့်သွင်းထားသည်။ MsgBoxအသုံးပြုသူအားသတိပေးချက်ပေါ်လာသည်။

တစ်ဦးစာပြန်ရန် Leave