Բովանդակություն
Նույնիսկ եթե դուք չգիտեք, թե ինչպես ծրագրավորել, կան բազմաթիվ վայրեր (գրքեր, կայքեր, ֆորումներ), որտեղ դուք կարող եք գտնել պատրաստի VBA մակրո կոդը Excel-ում հսկայական թվով բնորոշ առաջադրանքների համար: Իմ փորձից ելնելով, օգտատերերի մեծամասնությունը վաղ թե ուշ հավաքում է մակրոների իրենց անձնական հավաքածուն՝ սովորական գործընթացները ավտոմատացնելու համար, լինի դա բանաձևերը արժեքների թարգմանելը, բառերով գումարները ցուցադրելը կամ բջիջները ըստ գույնի ամփոփելը: Եվ այստեղ խնդիր է ծագում՝ Visual Basic-ի մակրո կոդը պետք է ինչ-որ տեղ պահել, որպեսզի հետագայում օգտագործվի աշխատանքի մեջ:
Ամենահեշտ տարբերակը մակրո կոդը անմիջապես աշխատանքային ֆայլում պահելն է՝ ստեղնաշարի դյուրանցման միջոցով գնալով Visual Basic խմբագրիչ: ալտ+F11 և ցանկի միջոցով նոր դատարկ մոդուլ ավելացնել Ներդիր – մոդուլ:
Այնուամենայնիվ, այս մեթոդի մի քանի թերություններ կան.
- Եթե կան շատ աշխատանքային ֆայլեր, և ամենուր մակրո է անհրաժեշտ, օրինակ՝ բանաձևերը արժեքների վերածելու մակրո, ապա ստիպված կլինեք պատճենել կոդը: յուրաքանչյուր գրքում.
- Չի կարելի մոռանալ պահպանել ֆայլը մակրո-միացված ձևաչափով (xlsm) կամ երկուական գրքի ձևաչափով (xlsb):
- Նման ֆայլ բացելիս մակրո պաշտպանություն ամեն անգամ կհրապարակի նախազգուշացում, որը պետք է ընդունվի (լավ, կամ ամբողջովին անջատեք պաշտպանությունը, որը միշտ չէ, որ ցանկալի է):
Ավելի էլեգանտ լուծում կլինի ստեղծելը ձեր սեփական հավելումը (Excel հավելում) – հատուկ ձևաչափի առանձին ֆայլ (xlam), որը պարունակում է ձեր բոլոր «սիրած» մակրոները: Այս մոտեցման առավելությունները.
- Դա բավական կլինի միացնել հավելումը մեկ անգամ Excel-ում – և դուք կարող եք օգտագործել դրա VBA ընթացակարգերն ու գործառույթները այս համակարգչի ցանկացած ֆայլում: Ձեր աշխատանքային ֆայլերի պահպանումը xlsm- և xlsb- ձևաչափերով, հետևաբար, պարտադիր չէ, քանի որ. սկզբնական կոդը կպահվի ոչ թե դրանցում, այլ հավելյալ ֆայլում:
- Պաշտպանություն Ձեզ նույնպես չեն անհանգստացնի մակրոները: Հավելումները, ըստ սահմանման, վստահելի աղբյուրներ են:
- Կարող եմ անել առանձին ներդիր Excel ժապավենի վրա՝ գեղեցիկ կոճակներով՝ հավելյալ մակրոներ գործարկելու համար:
- Հավելվածը առանձին ֆայլ է: Նրան հեշտ է իրականացնել համակարգչից համակարգիչ, կիսվեք գործընկերների հետ կամ նույնիսկ վաճառեք այն 😉
Եկեք քայլ առ քայլ քայլենք ձեր սեփական Microsoft Excel հավելվածի ստեղծման ողջ գործընթացով:
Քայլ 1. Ստեղծեք հավելյալ ֆայլ
Բացեք Microsoft Excel-ը դատարկ աշխատանքային գրքույկով և պահեք այն ցանկացած հարմար անվան տակ (օրինակ MyExcelAddin) հրամանով հավելյալ ձևաչափով Ֆայլ – Պահել որպես կամ բանալիներ F12, նշելով ֆայլի տեսակը Excel հավելում:
Խնդրում ենք նկատի ունենալ, որ լռելյայնորեն Excel-ը հավելումներ է պահում C:UsersYour_nameAppDataRoamingMicrosoftAddIns պանակում, սակայն, սկզբունքորեն, դուք կարող եք նշել ցանկացած այլ թղթապանակ, որը հարմար է ձեզ համար:
Քայլ 2. Մենք միացնում ենք ստեղծված հավելումը
Այժմ վերջին քայլում մեր ստեղծած հավելումը MyExcelAddin պետք է միացված լինի Excel-ին: Դա անելու համար անցեք մենյու Ֆայլ – Ընտրանքներ – Հավելումներ (Ֆայլ — Ընտրանքներ — Հավելումներ), սեղմեք կոճակի վրա Մեր Մասին (Գնա) պատուհանի ներքևի մասում: Բացվող պատուհանում սեղմեք կոճակը տեսություն (Թերթիր) և նշեք մեր հավելյալ ֆայլի գտնվելու վայրը:
Եթե դուք ամեն ինչ ճիշտ եք արել, ապա մեր MyExcelAddin պետք է հայտնվի հասանելի հավելումների ցանկում.
Քայլ 3. Ավելացնել մակրոներ հավելումին
Մեր հավելումը միացված է Excel-ին և հաջողությամբ աշխատում է, բայց դրա մեջ դեռևս մեկ մակրո չկա: Եկեք լրացնենք այն: Դա անելու համար բացեք Visual Basic խմբագրիչը ստեղնաշարի դյուրանցմամբ ալտ+F11 կամ կոճակով Visual Basic ականջակալ երեվակիչ (մշակող). Եթե ներդիրները երեվակիչ տեսանելի չէ, այն կարող է ցուցադրվել միջոցով Ֆայլ – Ընտրանքներ – Ժապավենի տեղադրում (Ֆայլ — Ընտրանքներ — Անհատականացնել ժապավենը).
Խմբագրի վերին ձախ անկյունում պետք է լինի պատուհան Նախագիծ (եթե այն տեսանելի չէ, ապա միացրեք այն մենյուի միջոցով Դիտել — Project Explorer):
Այս պատուհանը ցուցադրում է բոլոր բաց աշխատանքային գրքերը և գործարկվող Microsoft Excel հավելումները, ներառյալ մերը: VBAProject (MyExcelAddin.xlam) Ընտրեք այն մկնիկի օգնությամբ և ցանկի միջոցով ավելացրեք նոր մոդուլ Ներդիր – մոդուլ. Այս մոդուլում մենք կպահենք մեր հավելյալ մակրոների VBA կոդը:
Դուք կարող եք կամ մուտքագրել կոդը զրոյից (եթե գիտեք, թե ինչպես ծրագրավորել), կամ պատճենել այն պատրաստի տեղից (ինչը շատ ավելի հեշտ է): Եկեք փորձարկման համար մուտքագրենք պարզ, բայց օգտակար մակրոյի կոդը ավելացված դատարկ մոդուլում.
Կոդը մուտքագրելուց հետո չմոռանաք սեղմել վերին ձախ անկյունում գտնվող պահպանման կոճակը (դիսկետ):
Մեր մակրո FormulasToValuesԻնչպես հեշտությամբ կարող եք պատկերացնել, բանաձևերը փոխակերպում է արժեքների նախապես ընտրված տիրույթում: Երբեմն այս մակրոները նույնպես կոչվում են ընթացակարգեր. Այն գործարկելու համար անհրաժեշտ է ընտրել բանաձևերով բջիջներ և բացել հատուկ երկխոսության տուփ Մակրո ներդիրից երեվակիչ (Մշակող — մակրո) կամ ստեղնաշարի դյուրանցում ալտ+F8. Սովորաբար այս պատուհանը ցույց է տալիս հասանելի մակրոները բոլոր բաց աշխատանքային գրքույկներից, սակայն հավելյալ մակրոներն այստեղ տեսանելի չեն: Չնայած դրան, մենք կարող ենք դաշտում մուտքագրել մեր ընթացակարգի անունը մակրո անունը (Մակրո անունը)եւ ապա կտտացրեք կոճակը Վազում (վազել) – և մեր մակրոն կաշխատի՝
|
Այստեղ դուք կարող եք նաև նշանակել ստեղնաշարի դյուրանցում մակրո արագ գործարկելու համար. կոճակը պատասխանատու է դրա համար Պարամետրեր (Ընտրանքներ) նախորդ պատուհանում Մակրո:
Ստեղներ նշանակելիս հիշեք, որ դրանք զգայուն են մեծատառերի և ստեղնաշարի դասավորության նկատմամբ: Այսպիսով, եթե դուք նշանակեք նման համակցություն Ctrl+Й, ապա, փաստորեն, ապագայում դուք պետք է համոզվեք, որ ձեր դասավորությունը միացված է և լրացուցիչ սեղմեք Հերթափոխությունմեծատառ ստանալու համար.
Հարմարության համար մենք կարող ենք նաև կոճակ ավելացնել մեր մակրոյի համար պատուհանի վերին ձախ անկյունում գտնվող արագ մուտքի գործիքների տողում: Դա անելու համար ընտրեք Ֆայլ – Ընտրանքներ – Արագ մուտքի Գործիքադարակ (Ֆայլ — Ընտրանքներ — Անհատականացնել Արագ մուտքի Գործիքադարակը), և այնուհետև պատուհանի վերևի բացվող ցանկում ընտրեք տարբերակը Մակրո. Դրանից հետո մեր մակրո FormulasToValues կարող է տեղադրվել վահանակի վրա կոճակով Ավելացնել (Ավելացնել) և կոճակով ընտրեք դրա պատկերակը Փոփոխություն (Խմբագրել):
Քայլ 4. Ավելացրեք գործառույթներ հավելումին
Սակայն մակրո ընթացակարգեր, Այնտեղ կան նաեւ ֆունկցիայի մակրոներ կամ ինչպես կոչվում են UDF (Օգտագործողի կողմից սահմանված գործառույթ = օգտագործողի կողմից սահմանված գործառույթ): Եկեք ստեղծենք առանձին մոդուլ մեր հավելման մեջ (մենյու հրաման Ներդիր – մոդուլ) և այնտեղ տեղադրեք հետևյալ ֆունկցիայի կոդը.
Հեշտ է հասկանալ, որ այս գործառույթն անհրաժեշտ է ԱԱՀ-ն ներառյալ ԱԱՀ-ի գումարից հանելու համար: Իհարկե, ոչ Նյուտոնի երկանդամը, բայց դա մեզ համար օրինակ կբերի հիմնական սկզբունքները ցույց տալու համար:
Նկատի ունեցեք, որ ֆունկցիայի շարահյուսությունը տարբերվում է ընթացակարգից.
- օգտագործվում է շինարարություն Գործառույթ…. Վերջի գործառույթը փոխարեն Ենթ … Վերջ Ենթ
- Ֆունկցիայի անվանումից հետո փակագծերում նշվում են նրա արգումենտները
- ֆունկցիայի մարմնում կատարվում են անհրաժեշտ հաշվարկները, այնուհետև արդյունքը վերագրվում է ֆունկցիայի անունով փոփոխականին.
Նկատի ունեցեք նաև, որ այս ֆունկցիան անհրաժեշտ չէ, և անհնար է գործարկել նախորդ մակրո ընթացակարգի նման երկխոսության վանդակում Մակրո և կոճակը Վազում. Նման մակրո ֆունկցիան պետք է օգտագործվի որպես աշխատանքային թերթիկի ստանդարտ ֆունկցիա (SUM, IF, VLOOKUP…), այսինքն՝ պարզապես մուտքագրեք ցանկացած բջիջ՝ որպես փաստարկ նշելով ԱԱՀ-ով գումարի արժեքը.
… կամ մուտքագրեք ստանդարտ երկխոսության տուփի միջոցով՝ ֆունկցիա տեղադրելու համար (կոճակ fx բանաձևի տողում), ընտրելով կատեգորիա Օգտագործողը սահմանվում է (Օգտվողի կողմից սահմանված):
Այստեղ միակ տհաճ պահը պատուհանի ներքևում գտնվող ֆունկցիայի սովորական նկարագրության բացակայությունն է։ Այն ավելացնելու համար դուք պետք է անեք հետևյալը.
- Բացեք Visual Basic խմբագրիչը ստեղնաշարի դյուրանցմամբ ալտ+F11
- Նախագծի վահանակում ընտրեք հավելումը և սեղմեք ստեղնը F2Օբյեկտ Բրաուզերի պատուհանը բացելու համար
- Ընտրեք ձեր հավելյալ նախագիծը պատուհանի վերևի բացվող ցանկից
- Աջ սեղմեք երևացող ֆունկցիայի վրա և ընտրեք հրամանը Հատկություններ.
- Մուտքագրեք գործառույթի նկարագրությունը պատուհանում Նկարագրություն
- Պահպանեք հավելյալ ֆայլը և վերագործարկեք Excel-ը.
Վերագործարկվելուց հետո ֆունկցիան պետք է ցուցադրի մեր մուտքագրած նկարագրությունը.
Քայլ 5. Ստեղծեք հավելյալ ներդիր միջերեսում
Վերջնական, թեև ոչ պարտադիր, բայց հաճելի հպումը կլինի առանձին ներդիրի ստեղծումը կոճակով մեր մակրոն գործարկելու համար, որը կհայտնվի Excel-ի ինտերֆեյսում՝ մեր հավելումը միացնելուց հետո:
Լռելյայնորեն ցուցադրվող ներդիրների մասին տեղեկատվությունը պարունակվում է գրքում և պետք է ձևաչափվի հատուկ XML կոդով: Նման կոդ գրելու և խմբագրելու ամենահեշտ ձևը հատուկ ծրագրերի՝ XML խմբագիրների օգնությամբ է: Ամենահարմարներից մեկը (և անվճար) Մաքսիմ Նովիկովի ծրագիրն է Ribbon XML խմբագիր.
Դրա հետ աշխատելու ալգորիթմը հետևյալն է.
- Փակեք Excel-ի բոլոր պատուհանները, որպեսզի ֆայլի կոնֆլիկտ չլինի, երբ մենք խմբագրում ենք հավելյալ XML կոդը:
- Գործարկեք Ribbon XML Editor ծրագիրը և բացեք մեր MyExcelAddin.xlam ֆայլը դրա մեջ
- Կոճակով ներդիրներ վերին ձախ անկյունում ավելացրեք կոդի հատվածը նոր ներդիրի համար.
- Պետք է դատարկ չակերտներ դնել id մեր ներդիրը և խումբը (ցանկացած եզակի նույնացուցիչներ), և in պիտակ – մեր ներդիրի անունները և դրա վրա գտնվող կոճակների խումբը.
- Կոճակով կոճակ ձախ վահանակում ավելացրեք կոճակի համար դատարկ կոդը և դրան պիտակներ ավելացրեք.
- պիտակ կոճակի տեքստն է
- պատկերը Mso — սա կոճակի պատկերի պայմանական անունն է: Ես օգտագործել եմ կարմիր կոճակի պատկերակ, որը կոչվում է AnimationCustomAddExitDialog: Բոլոր հասանելի կոճակների անունները (և դրանցից մի քանի հարյուր կա!) կարելի է գտնել ինտերնետի բազմաթիվ կայքերում, եթե որոնեք «imageMso» հիմնաբառերը: Սկսնակների համար կարող եք գնալ այստեղ:
- onAction – այսպես է կոչվում հետադարձ կապի ընթացակարգը՝ հատուկ կարճ մակրո, որը կգործարկի մեր հիմնական մակրոն FormulasToValues. Դուք կարող եք այս պրոցեդուրան անվանել այնպես, ինչպես ցանկանում եք: Մի փոքր ուշ կավելացնենք։
- Դուք կարող եք ստուգել ամեն ինչի ճիշտությունը՝ օգտագործելով գործիքագոտու վերևի կանաչ նշանով կոճակը: Նույն տեղում սեղմեք ճկուն սկավառակով կոճակը՝ բոլոր փոփոխությունները պահպանելու համար:
- Փակեք Ribbon XML Editor-ը
- Բացեք Excel-ը, անցեք Visual Basic-ի խմբագրիչ և ավելացրեք հետադարձ զանգի ընթացակարգ մեր մակրոյում KillFormulasայնպես, որ այն գործարկի մեր հիմնական մակրոն՝ բանաձևերը արժեքներով փոխարինելու համար:
- Մենք պահպանում ենք փոփոխությունները և, վերադառնալով Excel, ստուգում ենք արդյունքը.
Այսքանը. հավելումը պատրաստ է օգտագործման: Լրացրեք այն ձեր սեփական ընթացակարգերով և գործառույթներով, ավելացրեք գեղեցիկ կոճակներ, և ձեր աշխատանքում շատ ավելի հեշտ կլինի օգտագործել մակրոները:
- Ինչ են մակրոները, ինչպես օգտագործել դրանք ձեր աշխատանքում, որտեղից ստանալ մակրո կոդը Visual Basic-ում:
- Ինչպես կատարել ցայտած էկրան Excel-ում աշխատանքային գիրք բացելիս
- Ինչ է անձնական մակրո գիրքը և ինչպես օգտագործել այն