ကွန်ပျူတာများဆော့ဖျဝဲ

VBA Excel ကို: နမူနာအစီအစဉ်များ။ Excel ကိုအတွက် macro

လူအနည်းငယ်လူကြိုက်များသည် Microsoft Excel ကိုထုတ်ကုန်၏ပထမ version ကို 1985 ခုနှစ်တွင်ပေါ်ထွန်းသောကြောင်းကိုငါသိ၏။ ထိုအချိန်မှစ. သူကအတော်ကြာပြုပြင်မွမ်းမံခြင်းနှင့်ကမ္ဘာတစ်ဝှမ်းသုံးစွဲသူသန်းပေါင်းများစွာ၏ဝယ်လိုအားခံခဲ့သည်။ သို့သော်သာဒီစာရင်းဇယားအနည်းငယ်စွမ်းရည်နှင့်အတူများစွာသောအလုပ်နှင့်ပင်သူတို့ Excel ကို programming ကိုမှစွမ်းရည်များအတွက်ဘဝပိုမိုလွယ်ကူစေနိုင်ကြောင်းကိုမည်သို့မသိရပါဘူး။

VBA ကဘာလဲ

Excel ကိုအတွက် programming မူလကမိုက်ကရိုဆော့ဖထံမှအကျော်ကြားဆုံး spreadsheet အတွက်တည်ဆောက်ခဲ့ကြောင်းလျှောက်လွှာ programming language ကိုအဘို့အ Visual Basic အားဖြင့်ပြုသောအမှုဖြစ်ပါတယ်။

မိမိအကုသိုလ်ယူဖို့ကျွမ်းကျင်သူများဖွံ့ဖြိုးတိုးတက်မှု၏ဆွေမျိုးလွယ်ကူခြင်း attribute ။ အလေ့အကျင့်တွင်ဖော်ပြထားသည့်အတိုင်း VBA, ပရော်ဖက်ရှင်နယ် programming ကိုကျွမ်းကျင်မှုမရှိကြပါဘူးသူကိုပင်အသုံးပြုသူများအခြေခံကျွမ်းကျင်နိုင်ပါ။ VBA များအတွက် feature များရုံးလျှောက်လွှာပတ်ဝန်းကျင်တွင် script ကိုကွပ်မျက်ပါဝင်သည်။

အဆိုပါအစီအစဉ်၏အားနည်းချက်ကတော့ကွဲပြားခြားနားသောဗားရှင်း၏ compatibility နှင့်ဆက်စပ်ပြဿနာများဖြစ်ကြသည်။ သူတို့ကထို program ၏ VBA ကုဒ်ထုတ်ကုန်၏ဗားရှင်းအသစ်ထဲမှာသော်လည်းမဟောင်းတဦးတည်းအတွက်ပစ္စုပ္ပန်သောလုပ်ဆောင်ချက်ကိုရည်ညွှန်းဆိုတဲ့အချက်ကိုကြောင့်ဖြစ်ရတဲ့နေကြသည်။ တပါးအမျိုးသား၏မျက်နှာကိုပြောင်းလဲပစ်ရန်ကြီးမားတဲ့အားနည်းချက်နဲ့ code ကိုအလွန်အကျွံမြင့်မားသောပွင့်လင်းလည်းရှိပါသည်။ သို့သျောလညျးကို Microsoft Office ကိုနှင့် IBM က Lotus ဆငျဖိုနီအသုံးပြုသူများသည်ကကြည့်ရှုရန် encryption ကို entry ကိုကုဒ်နဲ့ password setting များကိုလျှောက်ထားရန်ခွင့်ပြုပါတယ်။

အရာဝတ္ထု, collection များကို, ဂုဏ်သတ္တိများနှင့်နည်းလမ်းများ

ဒါဟာသင် VBA ပတ်ဝန်းကျင်တွင်အလုပ်လုပ်မယ့်သူမြားကိုနားလညျဖို့လိုအပျသောဤသဘောတရားများနှငျ့အတူရှိ၏။ လူအပေါင်းတို့၏ပထမဦးစွာသင်အရာဝတ္ထုသည်အဘယ်အရာကိုနားလည်ရပေမည်။ Excel ထဲတွင်, ဒီလုပ်ရပ်အတွက်စာရွက်, စာအုပ်နှင့်ဆဲလ်အကွာအဝေးအဖြစ်။ ဤရွေ့ကားအရာဝတ္ထုအထူးအဆင့်ဆင့်, တနည်းရှိတယ် တစ်ဦးချင်းစီကတခြားစကားကိုနားထောငျ။

သူတို့တွင်ဦးစီးချုပ်လျှောက်လွှာ, သက်ဆိုင်ရာ Excel ကိုပရိုဂရမ်ဖြစ်ပါတယ်။ စာအုပ်ပုံနှိပ်, သင်ထောက်ကူနှင့် Range နောက်သို့လိုက်ကြ၏။ ဥပမာအားဖြင့်, တိကျတဲ့စာရွက်ပေါ်ဆဲလ် A1 ရည်ညွှန်းဖို့အကောင့်ထဲသို့အဆင့်ဆင့်တာ, လမ်းညွှန်ရပေမည်။

"စုဆောင်းခြင်း," မှတ်တမ်းတင်ပေးထားသည့်အတွက်တူညီသောလူတန်းစား၏အရာဝတ္ထု၏ဤအုပ်စု ChartObjects ၏အယူအဆနှင့်စပ်လျဉ်း။ ၎င်း၏ဒြပ်စင်လည်းတ္ထုဖြစ်ပါသည်။

နောက်တစ်ခုအရာ - ဂုဏ်သတ္တိများ။ သူတို့ကမည်သည့်အရာဝတ္ထု၏တစ်ဦးလိုအပ်သောအင်္ဂါရပ်ဖြစ်တယ်။ ဥပမာ, Range များအတွက် - တစ် Value ကိုသို့မဟုတ်ဖော်မြူလာဖြစ်ပါတယ်။

နည်းလမ်းများ - သငျစေခငျြကွောငျးဖျောပွဖို့ command တစ်ခုဖြစ်သည်။ VBA အတွက်ကုဒ်ရေးသားခြင်းတဲ့အခါမှာသူတို့ကိုအရာဝတ္ထုအချက်အနေဖြင့်ကွဲကွာရမည်။ နောက်ပိုင်းမှာပြသပါလိမ့်မည်ကဲ့သို့သော "Excel ကို" ကိုအသုံးပြုခြင်းအတွက် programming တဲ့အခါမှာဥပမာအားဖြင့်အလွန်မကြာခဏဆဲလ် (1,1) ကို Select လုပ်ပါမှာထား၏။ ဒါဟာသြဒီနိတ်နှင့်အတူတစ်ဦးကလာပ်စည်းကိုရွေးဖို့လိုအပ်သည်ဟုဆိုလိုသည် တနည်း, (1,1) A1 ။

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

မည်သို့စတင်ရန်

ပထမဦးစွာအပေါင်းတို့၏, သင်ဖိုင်ကိုဖန်တီးကြောင့်ကယ်တင်နာမည်တစ်ခု assign နှင့်မက္ကရို-enabled စာအုပ် Excel ကို«အမျိုးအစားကိုရွေးပါချင်တယ်။ "

ထို့နောက်« Alt »သော့နှင့်« F11 »ပေါင်းစပ်သုံးစွဲဖို့လုံလောက်သော vB လျှောက်လွှာ, သွားပါ။ နောက်တစ်ခု:

  • ပြတင်းပေါက်၏အပေါ်ဆုံးမှာ menu bar ထဲက, လာမယ့်ဟာ Excel ကိုအိုင်ကွန်ဖို့ icon ကို click;
  • Mudule command ကိုမရွေး,
  • အဆိုပါ floppy disk ကိုအတူအိုင်ကွန်ကိုကလစ်စောင့်ရှောက်;
  • ရေးဆိုသညျကား, တစ်ဦးကုဒ်အကြမ်းဖျင်း။

အောက်မှာဖော်ပြထားတဲ့အတိုင်းပုံပေါ်သည်:

sub အစီအစဉ်ကို ()

'' ကျွန်တော်တို့ရဲ့ကုဒ်

အဆုံး Sub

လိုင်း " 'ကျွန်တော်တို့ရဲ့ကုဒ်" တစ်ဦးကွဲပြားခြားနားအရောင် (အစိမ်းရောင်) တွင်မီးမောင်းထိုးပြပါလိမ့်မည်သတိပြုပါ။ ဒီပေယျာလများအတွက်အကြောင်းပြချက်, အဘယျသို့အောက်ပါအတိုင်းမှတ်ချက်ကြောင်းကိုညွှန်ပြပေးသော string ကို၏အစအဦးမှာကယ်နှုတ်တော်မူ၏။

အခုတော့သင်သည်မည်သည့်ကုဒ်ရေးနှင့် (နမူနာအစီအစဉ်များကိုကြည့်ရှုပါ။ etc) ကိုမိမိတို့အဘို့ VBA Excel ကိုအတွက်အသစ်တခု tool ကိုဖန်တီးနိုင်ပါတယ်။ ဟုတ်ပါတယ်, Visual Basic ၏အခြေခံနှင့်ရင်းနှီးကျွမ်းဝင်နေသောသူတို့ကိုကြောင့်အများကြီးပိုမိုလွယ်ကူပါလိမ့်မည်။ သို့သျောလညျးကိုတောင်သူတို့သည်သင်အတော်လေးလျင်မြန်စွာသက်သာရနိုင်ပါလိမ့်ချင်လျှင်, အမရှိဘူးတဲ့သူ။

Excel ကိုအတွက် macro

ထိုနာနောက်ကွယ်မှာလျှောက်လွှာဘာသာစကားများအတွက် Visual Basic ၌ရေးထားလျက်ရှိ၏အစီအစဉ်များကိုဖွက်ထားပေးသည်။ ထို့ကြောင့် Excel ကိုရန်ပရိုဂရမ်းမင်း - လိုချင်သောကုဒ်တစ်ခုနိုင်တဲ့ macro ဖန်တီးရန်ဖြစ်ပါသည်။ ဒီစွမ်းရည်နှင့်အတူ, မိုက်ကရိုဆော့ဖ spreadsheet တစ်ဦးအထူးသဖြင့်အသုံးပြုသူရဲ့လိုအပ်ချက်လိုက်လျောညီထွေ, Self-ဖြစ်ပေါ်ပါသည်။ ဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောရေးသားခြင်းများအတွက် module တွေဖန်တီးဖို့ဘယ်လိုကိုင်တွယ်ဖြေရှင်းတော်မူပြီးမှ, က VBA Excel ကိုအစီအစဉ်၏ကွန်ကရစ်ဥပမာအတူရှေ့ဆက်ဖို့ဖြစ်နိုင်ပါတယ်။ အခြေခံအကျဆုံး codes တွေကိုနှင့်အတူစတင်နိုင်ရန်အကောင်းဆုံးဒါဟာဖြစ်ပါတယ်။

ဥပမာ 1

Task ကိုတဆဲလ်ရဲ့ contents ၏တန်ဖိုး copy, ပြီးတော့အခြားစာရေးပါလိမ့်မယ်တဲ့အစီအစဉ်ကိုရေးပါ။

: ဒီလိုလုပ်ဖို့

  • အဆိုပါ tab ကို "View" ဖွင့်လှစ်;
  • အိုင်ကွန် "ဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသော" ရွှေ့;
  • က "စံချိန်တင် Macro" ကိုလှုပ်ခါ;
  • ဖွင့်လှစ်ပုံစံဖြည့်ပါ။

ရိုးရှင်းဘို့, "Macro အမည်" "Makros1" စွန့်ခွာနှငျ့ "Shortcut ကိုသော့" ဖြည့်စွက်တာဖြစ်ပါတယ်၌ဥပမာ, နာရီ (ဒီသင်သာဓကအစီအစဉ်ကို«ကို Ctrl + ဇ» blitz အသင်းဖြစ်လိမ့်မည် run နိုင်ပါတယ်ဆိုလိုသည်) ။ စာနယ်ဇင်းရိုက်ထည့်ပါ။

အခုဆိုရင်သင်နိုင်တဲ့ macro မှတ်တမ်းတင်စတင်ခဲ့ကြပြီ, အခြားတစ်ဦးကလာပ်စည်းရဲ့ contents တက်ပါစေ။ မူရင်းအိုင်ကွန်သို့ပြန်သွားသည်။ က "စံချိန်တင် Macro on" ကိုကလစ်နှိပ်ပါ။ ဤလုပ်ဆောင်ချက်သည် applets ၏ပြီးစီးခြေတစ်လှမ်းရခဲ့သည်။

နောက်တစ်ခု:

  • ထပ် string ကို "macro" ရန်ရွေ့လျား;
  • စာရင်း "Macro 1" အတွက်ရွေးချယ်ထားသည့်လျက်ရှိ၏
  • "Run ကို" (လိုက်ပြီအတူတူအရေးယူမှုစတင်ဖြတ်လမ်းသော့«ကို Ctrl + နာရီ») ကိုကလစ်နှိပ်ပါ။

ရလဒ်အဖြစ်အဆိုပါနိုင်တဲ့ macro မှတ်တမ်းတင်စဉ်အတွင်းဖျော်ဖြေခဲ့ပြီးသောအရေးယူဆောင်ရွက်မှု။

ဒါဟာကုဒ်တူပုံကိုကြည့်ရှုရန်အဓိပ္ပာယ်စေသည်။ ဒီလိုလုပ်ဖို့ပြန် string ကိုရန် "macro" သွားပါနှင့် "Edit ကို" သို့မဟုတ် "Enter" ကိုကလစ်နှိပ်ပါ။ ရလဒ်အနေနဲ့သူတို့ VBA ပတ်ဝန်းကျင်တွင်မိမိတို့ကိုယ်ကိုရှာပါ။ တကယ်တော့ code ကိုသူ့ဟာသူလိုင်းများနိုင်တဲ့ macro Makros1 Sub () နဲ့ End Sub အကြားတည်ရှိသည်။

ကူးယူဖျော်ဖြေခဲ့ပြီး အကယ်. ဥပမာ, တစ်ဦးကလာပ်စည်းဆဲလ် C1 အတွက် A1 ကနေ code တွေရဲ့လိုင်းများများထဲမှ Range ( "C1 ဟာ") တူပါလိမ့်မယ်။ ရွေးချယ်ပါ။ ဘာသာပြန်ချက်, က "Range (" C1 ဟာ ") နဲ့တူလှပါတယ်။ ကို Select လုပ်ပါ" တစ်နည်းအတွက်ဆဲလ် C1 အတွက် VBA Excel ကိုတစ်ဦးအကူးအပြောင်းစေသည်။

code ကိုတစ်ဦးတက်ကြွတစ်စိတ်တစ်ပိုင်း ActiveSheet.Paste အဖွဲ့ပြီးဆုံး။ ဒါဟာမရွေးဆဲလ် C1 ဟာအတွက် (ဤကိစ္စတွင်, A1 အတွက်) ကလာပ်စည်းကိုရွေးချယ်မှတ်တမ်းတင် contents တွေကိုဆိုလိုပါတယ်။

ဥပမာ 2

VBA သံသရာ Excel ကိုအတွက်ကွဲပြားခြားနားသောဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောဖန်တီးကူညီပေးသည်။

VBA သံသရာကွဲပြားခြားနားသောဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောဖန်တီးကူညီပေးသည်။ cos (x) - တစ်ဦး function ကိုက y = X + က x 3 + 3x 2 ရှိကွောငျးယူဆ။ သငျသညျက၎င်း၏ဂရပ်ဖစ်များအတွက်နိုင်တဲ့ macro ဖန်တီးချင်တယ်။ ဤသည်သာ VBA သံသရာကို အသုံးပြု. လုပ်ဆောင်နိုင်တယ်။

အငြင်းအခုံလုပ်ဆောင်ချက်များကိုများ၏ကနဦးနှင့်နောက်ဆုံးတန်ဖိုးကိုများအတွက် x1 = 0 နှင့် x2 = 10 ယူပါ။ ထို့အပွငျကစဉ်ဆက်မပြတ်မိတ်ဆက်ပေးရန်လိုအပ်ပါသည် - ခြေလှမ်းများအတွက်တန်ဖိုးအငြင်းအခုံနှင့်တန်ပြန်များအတွက်ကနဦးတန်ဖိုးကိုပြောင်းလဲစေပါသည်။

VBA Excel ကိုဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောအားလုံးသည်ဥပမာအထက်ထွက်မသတ်မှတ်ကဲ့သို့တူညီသောလုပ်ထုံးလုပ်နည်းကိုအသုံးပြုပြီးဖန်တီးနေကြပါတယ်။ ဒီအထူးသဖြင့်အမှု၌, code ကိုတူ:

sub programmer ()

x1 = 1

x2 = 10

0.1 = shag

ကိုယ့် = 1

x1

က y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)

ဆဲလ်တွေ (ဈ, 1) .Value = x1 (ထိုသြဒီနိတ် (ဈ, 1) နဲ့မှတ်ဉာဏ်၌ရေးထားလျက်ရှိ၏ x1 တန်ဖိုး)

ဆဲလ်တွေ (ဈ, 2) .Value = y က (y တန်ဖိုးကိုသြဒီနိတ် (ဈ, 2) နှင့်အတူဆဲလ်၌ရေးထားလျက်ရှိ၏သည်)

ကိုယ့် = ကိုယ် + 1 (ခိုင်လုံသော count က);

x1 = x1 + shag (အငြင်းအခုံဟာခြေလှမ်းအရွယ်အစားပြောင်းလဲပစ်နေသည်);

loop

အဆုံး Sub ။

y ကိုမှ - ဤပြေးနိုင်တဲ့ macro "Excel ကို" ၏ရလဒ်အဖြစ်က x များအတွက်တန်ဖိုးများကို၎င်း, ဒုတိယမှတ်တမ်းတင်ထားသည်ပထမဦးဆုံးအရာနှစ်ခုကော်လံ, ရရှိရန်။

ထို့နောက် "Excel ကို" များအတွက်စံသူတို့အပျေါမှာတညျဆောကျနိုငျခဲ့အချိန်စာရင်း။

ဥပမာ 3

ဒီဇိုင်းသည်ကိုအသုံးပြုနေစဉ်တွင်အဆိုပါပြီးသားလျှော့ချ Do နှင့်အတူ, 2010 VBA Excel ကိုအတွက်အဖြစ်ကိုအခြားဗားရှင်းအတွက်သံသရာအကောင်အထည်ဖေါ်ရန်။

တစ်ကော်လံဖန်တီးသော program တစ်ခုစဉ်းစားပါ။ တစ်ခုချင်းစီကိုဆဲလ်ထဲမှာလိုင်းအရေအတွက်ကိုသက်ဆိုင်ရာရင်ပြင်မှတျတမျးတငျထားပါလိမ့်မည်။ ဒီဇိုင်း၏အသုံးပြုမှုများအတွက်ကောင်တာများအသုံးပြုခြင်းမရှိဘဲ, အလွန်အတိုချုပ်ကမှတ်တမ်းတင်ဖို့ခွင့်ပြုပါလိမ့်မယ်။

ပထမဦးစွာပြုလုပ်အထက်တွင်ဖော်ပြထားသကဲ့သို့တစ်နိုင်တဲ့ macro ကိုဖန်တီးရန်လိုအပ်ပေသည်။ ယင်းနောက် code ကိုသူ့ဟာသူရေးပါ။ ကျွန်တော်တို့ဟာ 10 ဆဲလ်များအတွက်တန်ဖိုးများကိုစိတ်ဝင်စားနေကြသည်ဟုယုံကြည်ကြသည်။ အောက်မှာဖေါ်ပြတဲ့အတိုင်းကုဒ်ကိုဖြစ်ပါတယ်။

ကိုယ့် = 1 မှ 10 Next ကိုများအတွက်

အဆိုပါ command 'တစျဦး၏နှစ်တိုးအတွက် 1 မှ 10 ထပ်ခါတလဲလဲ။ "သကဲ့သို့," လူ့ "ဘာသာစကားလွှဲပြောင်းဖြစ်ပါတယ်

task ကိုဥပမာ, ရင်ပြင်နှင့်အတူ 1 နှင့် 11 အကြားအားလုံးထူးဆန်းကိန်းကော်လံလက်ခံရရှိရန်လျှင်, ငါတို့သည်ရေးလိုက်:

ကိုယ့် = 1 မှ 10 ခြေလှမ်း 1 Next ကိုသည်။

ဤတွင်, step - ခြေလှမ်း။ ဤကိစ္စတွင်ခုနှစ်, ဒါကြောင့်နှစ်ခုညီမျှသည်။ ပုံမှန်အားဖြင့်သည် loop အတွက်စကားလုံးများ၏မရှိခြင်းကြောင့်တစ်ခုတည်းခြေလှမ်းကိုဆိုလိုသည်။

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

ယေဘုယျအားဖြင့် code ကိုတူလိမ့်မယ်:

sub အစီအစဉ်ကို ()

ကိုယ့် = 1 10 စေရန်အဆင့် 1 (10 စေရန်သာကိုယ့် = 1 ဘို့ကျမ်းစာ၌ရေးထားနိုင်ပါသည်)

ဆဲလ်တွေ (ဈ, 1) .Value = ဈ ^ 2 (တနည်းစတုရန်းတန်ဖိုးဆဲလ်ထဲသို့တိကျမ်းစာ၌လာသည်ကား (ဈ, 1) ဈ)

Next ကို (တစ်နည်းအတွက်တန်ပြန်နည်းလမ်းများ၏အခန်းကဏ္ဍနှင့်အခြားသံသရာ start)

အဆုံး Sub ။

(အထက်အဆိုပါညွှန်ကြားချက်။ ကြည့်ပါ) အသံဖမ်းခြင်းနှင့်အပြေးဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောအပါအဝင်မှန်ကန်စွာပြုသောအမှုရှိလျှင်, ထို့နောက်သူကတစ်ဦးချင်းစီအချိန်ဟုခေါ်သည်ပေးထားသောအရွယ်အစား (10 ဆဲလ်ပါဝင်သည်ဟုဤကိစ္စတွင်အတွက်) ကော်လံရယူလိမ့်မည်။

ဥပမာ 4

နေ့စဉ်အသက်တာ၌အလွန်မကြာခဏဒီယူသို့မဟုတ်အချို့သောအခြေအနေများပေါ် မူတည်. ကြောင်းဆုံးဖြတ်ချက်ရန်လိုအပ်ပေသည်။ VBA Excel ကိုမှာသူတို့ကိုမပါဘဲမလုပ်ဆောင်နိုင်ပါ။ (ခက်ခဲမှု) ကို algorithm ကို၏နောက်ထပ်သင်တန်းအစားတယ်ဆိုရင်၏ကနဦးကြိုတင်သတ်မှတ်ထားသော, အသုံးအများဆုံးဒီဇိုင်းကိုရွေးချယ်သည်အဘယ်မှာရှိအစီအစဉ်များဥပမာ ... ထိုအခါတယ်ဆိုရင် ... ထိုအခါ ... END သည်လျှင်။

သီးခြားအမှုစဉ်းစားပါ။ သင်ကိုသြဒီနိတ် (1,1) နဲ့ဆဲလ်ဖို့ "Excel ကို" တစ်နိုင်တဲ့ macro ဖန်တီးချင်ဆိုပါစို့မှတ်တမ်းတင်ထားပါတယ်:

1 အငြင်းအခုံအပြုသဘောဖြစ်ပါတယ်လျှင်,

0 အငြင်းအခုံသုညဖြစ်ပါတယ်လျှင်,

1, အငြင်းအခုံအနုတ်ပါ။

"Excel ကို" အတွက်ထိုကဲ့သို့သောနိုင်တဲ့ macro ၏ဖန်ဆင်းခြင်း "ပူ" သော့ Alt နှင့် F11 ၏အသုံးပြုမှုကိုတဆင့်တစ်ဦးစံလမ်းအတွက်စတင်သည်။ နောက်ထပ်အောက်ပါကုဒ်စာဖြင့်ရေးသား:

sub အစီအစဉ်ကို ()

x = ဆဲလ် (1, 1) .Value (ဒီ command က x ကိုသြဒီနိတ်ဆဲလ်ရဲ့ contents (1, 1 ၏တန်ဖိုးကိုသတ်မှတ်ပေးထားတဲ့))

အကယ်. x ကို> 0 င်ထိုအခါဆဲလ် (1, 1) .Value = 1

အကယ်. က x = 0 ထိုနောက်ဆဲလ် (1, 1) .Value = 0

ဆဲလ် (1, 1) .Value = -1 ထိုအခါက x <0 ပါလျှင်

အဆုံး Sub ။

ဒါဟာနိုင်တဲ့ macro run နှင့် "Excel ကို" ဟုငြင်းခုံခြင်းအဘို့အလိုခငျြတန်ဖိုးရရှိရန်ကျန်ရှိနေဆဲဖြစ်သည်။

VBA လုပ်ဆောင်ချက်များကို

သငျသညျကို Microsoft spreadsheet application ကိုအရမ်းမခက်ခဲသည်အကျော်ကြားဆုံးအစီအစဉ်တွင်, သတိပြုမိကြပေမည်ကြောင့်ဖြစ်သည်။ အထူးသဖြင့်သင်သည် VBA လုပ်ဆောင်ချက်များကိုသုံးစွဲဖို့ဘယ်လိုလေ့လာသင်ယူလျှင်။ စုစုပေါင်း, "Excel ကို" နှင့်နှုတ်ကပတ်တော်ကိုခန့် 160 လုပ်ဆောင်ချက်များကိုအတွက်အရေးအသား application များအတွက်အထူး created ဒီ programming language ကို။ သူတို့ကတော်တော်များများကြီးမားတဲ့အုပ်စုများသို့ခွဲခြားနိုင်ပါသည်။ သူတို့ဟာနေသောခေါင်းစဉ်:

  • သင်္ချာဆိုင်ရာလုပ်ငန်းဆောင်တာ။ အဆိုပါဆိုင်းတန်ဖိုးကို၏ငြင်းခုံဖို့သူတို့ကိုလျှောက်ထားခြင်း, သဘာဝလော်ဂရစ်သမ်ရရှိသော, ဒါကြောင့်တပြင်လုံးကိုတစ်စိတ်တစ်ပိုင်းဖြစ်ပါတယ်။
  • ဘဏ္ဍာရေးလုပ်ငန်းဆောင်တာ။ သူတို့ရဲ့ရရှိနိုင်စေရန်နှင့် Excel ကိုအတွက် programming ကိုသုံးပါကြောင့်, သင်စာရင်းကိုင်နှင့်ဘဏ္ဍာရေးအခြေချနေထိုင်ဘို့ထိရောက်သော tools တွေကိုရနိုင်တယ်။
  • array အပြောင်းအလဲနဲ့လုပ်ဆောင်ချက်များကို။ ဤရွေ့ကား Array, IsArray ပါဝင်သည်; LBound; UBound ။
  • မျဉ်းများအတွက် VBA Excel ကို function ကို။ ဒါကမျှမျှတတကြီးမားသောအုပ်စုတစ်စုဖြစ်ပါတယ်။ ဒါဟာဥပမာ, အာကာသ ANSI ကုဒ်ဖို့ကိန်းအငြင်းအခုံသို့မဟုတ် ASC လွှဲပြောင်းသင်္ကေတများညီမျှကွာဟချက်များစွာနဲ့ string ကိုဖန်တီးရန်လုပ်ဆောင်နိုင်ရန်, ပါဝင်သည်။ ထိုသူအပေါင်းတို့သည်ကျယ်ပြန့်အသုံးပြုသင်တို့သည်ဤစားပွဲနှင့်အတူအလုပ်လုပ်ရန်အများကြီးပိုလွယ် applications များဖန်တီးရန် "Excel ကို" တွင်ညှို့နှင့်အတူအလုပ်လုပ်ရန်ခွင့်ပြုထားပါသည်။
  • data type ပြောင်းလဲလုပ်ဆောင်ချက်များကို။ ဥပမာအားဖြင့်, CVar မူကွဲဒေတာအမျိုးအစားကပြောင်းလဲ, Expression အငြင်းအခုံပြန်လည်ရောက်ရှိ။
  • နေ့စွဲလုပ်ဆောင်ချက်များကို။ သူတို့သည်အလွန် "Excel ကို" ၏ standard feature တွေတိုးချဲ့။ ဒီတော့ WeekdayName function ကိုယင်း၏အရေအတွက်အားဖြင့်ရက်သတ္တပတ်၏နေ့ (အပြည့်အဝသို့မဟုတ်တစ်စိတ်တစ်ပိုင်း) ကိုအမည်ဖြင့်ပြန်လည်ရောက်ရှိ။ တောင်မှပိုမိုအသုံးဝင်သည့် Timer ဖြစ်ပါတယ်။ သူကတစ်ရက်တစ်ဦးအထူးသဖြင့်ယခုအချိန်တွင်မှညသန်းခေါင်ကတည်းကကြာပြီစက္ကန့်၏နံပါတ်ပေးသည်။
  • မတူညီတဲ့အရေအတွက်အားစနစ်များအတွက်ဂဏန်းအငြင်းအခုံပြောင်း function ။ ဥပမာအားဖြင့်, အောက်တိုဘာအရေအတွက် octal ကိုယ်စားပြုမှုမှ Output ဖြစ်ပါတယ်။
  • ပုံစံလုပ်ဆောင်ချက်များကို။ ဤအမှု၏အရေးအပါဆုံးကတော့ Format ကိုဖြစ်ပါတယ်။ ဒါဟာပုံစံများ၏ဖော်ပြချက်၌ပေးသောညွှန်ကြားချက်အတိုင်းချပ်တစ်ခုစကားရပ်နှင့်အတူတစ်မူကွဲပြန်လည်ရောက်ရှိ။
  • ဒါဘွား။

အဆိုပါကဤလုပ်ငန်းဆောင်တာများ၏ဂုဏ်သတ္တိများ၏လေ့လာမှုနှင့်၎င်းတို့၏လျှောက်လွှာသိသိသာသာ "Excel ကို" ၏နယ်ပယ်ချဲ့ထွင်ပါလိမ့်မယ်။

ဥပမာ 5

ရဲ့ပိုမိုရှုပ်ထွေးပြဿနာများကိုဖြေရှင်းနိုင်ဖို့ကြိုးစားကြပါစို့။ ဥပမာ:

ဒန်စက္ကူစီးပွားရေးလုပ်ငန်းအစီရင်ခံစာ၏ကုန်ကျစရိတ်များအမှန်တကယ်အဆင့်ကိုမှတ်တမ်းတင်။ လိုအပ်သည်:

  • spreadsheet "Excel ကို" ကသူ့ရဲ့ပုံစံအဘို့ကိုဖွံ့ဖြိုး;
  • လိုအပ်သောတွက်ချက်မှုထွက်သယ်ဆောင်ရန်, ကဖြည့်စွက်ရန်ကုန်ကြမ်းဒေတာတောင်းခြင်းနှင့်သက်ဆိုင်တဲ့ဆဲလ်၏တန်းပလိတ်ထဲမှာဖြည့်ပါလိမ့်မယ်တဲ့ VBA အစီအစဉ်ကိုလုပ်ရမည်။

အောက်ပါဖြေရှင်းချက်၏တဦးတည်းစဉ်းစားပါ။

တစ်ဦး template ကို Creating

အားလုံးလုပ်ရပ်များ Excel ကိုတစ်ဦးစံစာရွက်ပေါ်တွင်ဖျော်ဖြေနေကြသည်။ အဆိုပါဒေတာဝင်ဘို့အ reserved အခမဲ့ဆဲလ် လနှစ်တွင် ခေါင်းစဉ်-စားသုံးသူကုမ္ပဏီများ, ကုန်ကျစရိတ်၏ပမာဏ, လည်ပတ်ငွေကြေးကြောင့်သူတို့ရဲ့အဆင့်ကို။ ကုမ္ပဏီများသည် (ကုမ္ပဏီများမှ) ၏အရေအတွက်ကိုသကဲ့သို့, အစီရင်ခံစာမှတျတမျးတငျထားမထား၏လေးစားမှုအတွက်တန်ဖိုးများနှင့်ပရော်ဖက်ရှင်နယ်နာမတျော၏ပျေါအခွခေံစေရန်ဆဲလ်ကြိုတင်မဲအတွက် reserved မပေးပါ။ နာမသစ်ဖို့တာဝန်သင်ထောက်ကူ။ ဥပမာ, "Օအစီရင်ခံစာ" ။

variable တွေကို

အဆိုပါ template ကိုဖြည့်အလိုအလျောက်ပရိုဂရမ်တစ်ခုရေးဖို့ရန်, သင်္ကေတကိုရွေးပါ။ သူတို့က variable တွေကိုအတှကျအသုံးပွုလိမ့်မည်:

  • စားပွဲ၏လက်ရှိအတန်း၏ NN- အရေအတွက်ကို;
  • TP နှင့် TF - စီစဉ်ထားခြင်းနှင့်အမှန်တကယ်လည်ပတ်ငွေကြေးကြောင့်;
  • SF နှင့် SP - အမှန်တကယ်နှင့်စုစုပေါင်းကုန်ကျစရိတ်စီစဉ်ထား;
  • အိုင်ပီနဲ့ IF - စီစဉ်ထားခြင်းနှင့်အမှန်တကယ်ကုန်ကျစရိတ်အဆင့်အထိ။

ကျနော်တို့အတူတူအက္ခရာအားဖြင့်ဖျောညှနျးဒါပေမယ့်ကော်လံတစ်ခု "ရှေ့ဆက်» Itog စုဆောင်းခြင်းစုစုပေါင်းအတူ။ ဥပမာအားဖြင့်, ItogTP - "။ စီစဉ်ထားလည်ပတ်ငွေကြေးကြောင့်" အဖြစ်, ခေါင်းစဉ်ကော်လံနှငျ့ ပတျသကျ.

VBA programming ကိုသုံးပြီးပြဿနာဖြေရှင်းချက်

ဒီသင်္ကေတကိုသုံးပြီးကျနော်တို့ကှဲလှဲများအတွက်ပုံသေနည်းရရှိရန်။ / P ကို * 100, နှင့်ပမာဏအတွက် - သင်% အတွက်တွက်ချက်မှုထွက်သယ်ဆောင်ရန်လိုလျှင်ကျနော်တို့ (P ကိုက F) - ရှိတယ် (F ကို - P) ။

ဤအတွက်ချက်မှု၏ရလဒ်များကိုရုံသင့်လျော်သောဆဲလ်ထဲမှာ "Excel ကို" spreadsheet စေရန်အကောင်းဆုံးဖြစ်နိုင်ပါသည်။

ဖော်မြူလာ ItogP = ItogP + P ကိုနှင့် ItogF = ItogF + အက်ဖ်ဖြင့်ရရှိသောတကယ်တော့ရလဒ်နှင့်ဟောကိန်းများအတွက်

အဆိုပါတွက်ချက်မှုတစ်ရာခိုင်နှုန်းအဖြစ်ထွက်သယ်ဆောင်နှင့်စုစုပေါင်းတန်ဖိုးအားလျှင်လျှင် / ItogP * 100 ကျော် - (ItogF - ItogP) - သွေဖီများအတွက် = (ItogP ItogF) ကိုအသုံးပြုပါ။

ရလဒ်တစ်ဖန်ပြန်လည်သင့်လျော်သောဆဲလ်တှငျမှတျတမျးတငျထားသ, ဒါကြောင့် variable တွေကိုသူတို့ကိုတာဝန်ပေးရန်မလိုအပ်လည်းမရှိ။

သင်စာအုပ်ပုံနှိပ်ကယ်တင်ချင် program တစ်ခုကိုဖန်တီးရန်မစတင်မီဥပမာ, နာမတော်ကိုအမှီ ပြု. "Otchet1.xls" အောက်မှာ။

စာနယ်ဇင်း "ဟုအစီရင်ခံစားပွဲ Create," သင် header ကိုအချက်အလက်များကိုထည့်သွင်းပြီးနောက်မှသာ 1 အချိန်ကိုနှိပ်ရပါမည်။ သင်သိနှင့်အခြားစည်းမျဉ်းစည်းကမ်းတွေကိုသငျ့သညျ။ အထူးသဖြင့်, ခလုတ်ကိုတစ်ဦးချင်းစီလှုပ်ရှားမှုများအတွက်တန်ဖိုးများစားပွဲသို့ဝင်ရောက်ပြီးနောက်တစ်ခုချင်းစီကိုအချိန်ဖိရမည်ဖြစ်သည် "ဟုလိုင်း Add" ။ ခလုတ်ကို "Finish ကို" ကိုနှိပ်ဖို့လိုအပ် data အားလုံးကိုဝင်ရောက်ပြီးနောက်, ပြီးတော့ပြတင်းပေါက်မှာ "Excel ကို" ကိုပြောင်းပါ။

ယခုတွင်သင်သည်ဘာလို့လဲဆိုတော့ Micro စနစ်နဲ့အခြားသောနှင့်အတူ Excel ကိုများအတွက်ပြဿနာကိုဖြေရှင်းနိုင်ဖို့ဘယ်လိုသိသော။ vba သုံးစွဲဖို့စွမ်းရည် excel (နမူနာအစီအစဉ်များကိုကြည့်ရှုပါ။ အထက်) နှင့်သင်ကစာသားအယ်ဒီတာ, ယခုအချိန်တွင်လူကြိုက်အများဆုံး၏ပတ်ဝန်းကျင်၌အလုပ်လုပ်ကိုင်ဖို့လိုပမေ "နှုတ်ကပတ်တော်ကို။ " အထူးသဖြင့်, ဤဆောင်းပါး၏အစအဦးမှာပြထားတဲ့အတိုင်းမှတ်တမ်းတင်ခြင်းဖြင့်, ဒါမှမဟုတ်စာသားပေါ်စစ်ဆင်ရေးများစွာသောအရာကနေတဆင့် menu ကိုခလုတ်ကိုဖန်တီးရန်ကုဒ်ရေးသားခြင်းအားဖြင့်တာဝန်အပေါ်သော့ကိုနှိပ်ခြင်းဖြင့်ဒါမှမဟုတ် "View" အိုင်ကွန်နှင့် "macro" tab ကိုမှတဆင့်လုပ်ဆောင်နိုင်တယ်။

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 my.birmiss.com. Theme powered by WordPress.