Werrej
Anke jekk ma tafx kif tipprogramma, hemm ħafna postijiet (kotba, websajts, forums) fejn tista 'ssib kodiċi makro VBA lest għal numru kbir ta' kompiti tipiċi f'Excel. Fl-esperjenza tiegħi, il-biċċa l-kbira tal-utenti llum jew għada jiġbru l-kollezzjoni personali tagħhom ta’ macros biex awtomatizzaw il-proċessi ta’ rutina, kemm jekk jittraduċu formuli f’valuri, juru somom bil-kliem, jew jinġabru ċelluli bil-kulur. U hawn tqum il-problema - il-kodiċi makro fil-Visual Basic jeħtieġ li jinħażen x'imkien sabiex jintuża aktar tard fix-xogħol.
L-eħfef għażla hija li tissejvja l-kodiċi makro direttament fil-fajl tax-xogħol billi tmur għall-editur Visual Basic billi tuża l-shortcut tat-tastiera Alt+F11 u żżid modulu vojt ġdid permezz tal-menu Daħħal – Modulu:
Madankollu, hemm diversi żvantaġġi b'dan il-metodu:
- Jekk hemm ħafna fajls tax-xogħol, u makro hija meħtieġa kullimkien, bħal makro għall-konverżjoni tal-formuli f'valuri, allura jkollok tikkopja l-kodiċi f’kull ktieb.
- M'għandux jintesa ħlief il-fajl f'format makro-ppermettiet (xlsm) jew f'format ta' ktieb binarju (xlsb).
- Meta tiftaħ tali fajl protezzjoni makro kull darba joħroġ twissija li jeħtieġ li tiġi rikonoxxuta (sewwa, jew tiddiżattiva kompletament il-protezzjoni, li mhux dejjem ikun mixtieq).
Soluzzjoni aktar eleganti tkun li toħloq add-in tiegħek stess (Excel Add-in) – fajl separat ta’ format speċjali (xlam) li fih il-macros “favoriti” tiegħek kollha. Il-vantaġġi ta 'dan l-approċċ:
- Ikun biżżejjed qabbad add-on darba f'Excel - u tista 'tuża l-proċeduri u l-funzjonijiet VBA tagħha fi kwalunkwe fajl fuq dan il-kompjuter. L-issejvjar mill-ġdid tal-fajls tax-xogħol tiegħek f'formati xlsm u xlsb, għalhekk, mhuwiex meħtieġ, għaliex. il-kodiċi tas-sors mhux se jinħażen fihom, iżda fil-fajl add-in.
- Protezzjoni inti mhux se tkun inkwetat minn macros, lanqas. add-ons huma, b'definizzjoni, sorsi affidabbli.
- Tista 'tagħmel tab separata fuq iż-żigarella Excel b'buttuni sbieħ biex imexxu macros add-in.
- Il-add-in huwa fajl separat. Tiegħu faċli biex iwettqu minn kompjuter għal kompjuter, taqsamha mal-kollegi jew saħansitra ibigħha 😉
Ejja nimxu permezz tal-proċess kollu tal-ħolqien tiegħek stess Microsoft Excel add-in pass pass.
Pass 1. Oħloq fajl add-in
Iftaħ Microsoft Excel b'ktieb tax-xogħol vojt u ssejvjah taħt kwalunkwe isem xieraq (per eżempju MyExcelAddin) f'format add-in mal-kmand File – Save As jew ċwievet F12, li tispeċifika t-tip tal-fajl Excel Add-in:
Jekk jogħġbok innota li b'mod awtomatiku Excel jaħżen add-ins fil-folder C:UsersYour_nameAppDataRoamingMicrosoftAddIns, iżda, fil-prinċipju, tista 'tispeċifika kwalunkwe folder ieħor li huwa konvenjenti għalik.
Pass 2. Aħna ngħaqqdu l-add-in maħluqa
Issa l-add-in ħloqna fl-aħħar pass MyExcelAddin għandhom ikunu konnessi ma 'Excel. Biex tagħmel dan, mur fil-menu Fajl – Għażliet – Żid (Fajl — Għażliet — Add-Ins), ikklikkja fuq il-buttuna dwar (Mur) fil-qiegħ tat-tieqa. Fit-tieqa li tiftaħ, ikklikkja l-buttuna reviżjoni (Ibbrawżja) u speċifika l-post tal-fajl add-in tagħna.
Jekk għamilt kollox sew, allura tagħna MyExcelAddin għandhom jidhru fil-lista ta’ add-ons disponibbli:
Pass 3. Żid macros mal-add-in
Is-add-in tagħna huwa konness ma 'Excel u jaħdem b'suċċess, iżda għad m'hemmx makro wieħed fih. Ejja nimlewha. Biex tagħmel dan, iftaħ l-editur Visual Basic bis-shortcut tat-tastiera Alt+F11 jew bil-buttuna Visual Basic tab iżviluppatur (Żviluppatur). Jekk tabs iżviluppatur mhux viżibbli, jista 'jintwera permezz Fajl – Għażliet – Setup taż-żigarella (Fajl — Għażliet — Ippersonalizza żigarella).
Għandu jkun hemm tieqa fir-rokna ta' fuq tax-xellug tal-editur Proġett (jekk ma jkunx viżibbli, imbagħad ixgħelha permezz tal-menu Ara — Esploratur tal-Proġett):
Din it-tieqa turi l-kotba tax-xogħol miftuħa kollha u li qed imexxu Microsoft Excel add-ins, inkluż tagħna. VBAProject (MyExcelAddin.xlam) Agħżelha bil-maws u żid modulu ġdid miegħu permezz tal-menu Daħħal – Modulu. F'dan il-modulu, aħna se naħżnu l-kodiċi VBA tal-macros add-in tagħna.
Tista 'jew ittajpja l-kodiċi mill-bidu (jekk taf kif tipprogramma), jew tikkopjah minn x'imkien lest (li huwa ħafna aktar faċli). Ejja, għall-ittestjar, daħħal il-kodiċi ta 'makro sempliċi iżda utli fil-modulu vojt miżjud:
Wara li ddaħħal il-kodiċi, tinsiex tikklikkja fuq il-buttuna (diskette) li tissejvja fir-rokna ta' fuq tax-xellug.
Makro tagħna FormulasToValues, kif tista 'faċilment timmaġina, tikkonverti formuli f'valuri f'firxa magħżula minn qabel. Xi drabi dawn il-macros jissejħu wkoll proċeduri. Biex tħaddem, għandek bżonn tagħżel ċelloli b'formuli u tiftaħ kaxxa ta 'dialog speċjali Macros mit-tab iżviluppatur (Żviluppatur — Makros) jew shortcut tat-tastiera Alt+F8. Normalment, din it-tieqa turi macros disponibbli mill-kotba tax-xogħol miftuħa kollha, iżda macros add-in mhumiex viżibbli hawn. Minkejja dan, nistgħu ndaħħlu l-isem tal-proċedura tagħna fil-qasam isem makro (Isem makro)u mbagħad ikklikkja l-buttuna Mexxi (ġiri) – u l-makro tagħna se taħdem:
|
Hawnhekk tista 'wkoll tassenja shortcut tat-tastiera biex tniedi makro malajr - il-buttuna hija responsabbli għal dan parametri (Għażliet) fit-tieqa preċedenti Macro:
Meta tassenja ċwievet, żomm f'moħħok li huma sensittivi għall-każ u t-tqassim tat-tastiera. Mela jekk tassenja kombinazzjoni simili Ctrl+Й, imbagħad, fil-fatt, fil-futur ser ikollok tiżgura ruħek li jkollok it-tqassim mixgħul u agħfas addizzjonalment Shiftbiex tikseb l-ittra kapitali.
Għall-konvenjenza, nistgħu wkoll inżidu buttuna għall-makro tagħna mal-bar tal-għodda ta 'aċċess rapidu fir-rokna ta' fuq tax-xellug tat-tieqa. Biex tagħmel dan, agħżel Fajl – Għażliet – Toolbar Aċċess Rapidu (Fajl — Għażliet — Customize Quick Access Toolbar), u mbagħad fil-lista drop-down fil-quċċata tat-tieqa l-għażla Macros. Wara dik il-makro tagħna FormulasToValues jistgħu jitqiegħdu fuq il-pannell bil-buttuna Żid (Żid) u agħżel ikona għaliha bil-buttuna Bidla (Edit):
Pass 4. Żid funzjonijiet mal-add-in
Imma makro-proċeduri, hemm ukoll makro tal-funzjoni jew kif jissejħu UDF (Funzjoni definita mill-utent = funzjoni definita mill-utent). Ejja noħolqu modulu separat fis-add-on tagħna (kmand tal-menu Daħħal – Modulu) u waħħal il-kodiċi tal-funzjoni li ġejja hemmhekk:
Huwa faċli li wieħed jara li din il-funzjoni hija meħtieġa biex tiġi estratta l-VAT mill-ammont inkluża l-VAT. Mhux il-binomjali ta 'Newton, ovvjament, iżda se jagħmel għalina bħala eżempju biex nuru l-prinċipji bażiċi.
Innota li s-sintassi ta' funzjoni hija differenti minn proċedura:
- tintuża kostruzzjoni Funzjoni …. Tmiem Funzjoni minflok Sub … Tmiem Sub
- wara l-isem tal-funzjoni, l-argumenti tagħha huma indikati fil-parentesi
- fil-korp tal-funzjoni, isiru l-kalkoli meħtieġa u mbagħad ir-riżultat jiġi assenjat lil varjabbli bl-isem tal-funzjoni
Innota wkoll li din il-funzjoni mhix meħtieġa, u huwa impossibbli li taħdem bħall-proċedura makro preċedenti permezz tal-kaxxa tad-djalogu Macros u buttuna Mexxi. Funzjoni makro bħal din għandha tintuża bħala funzjoni ta’ worksheet standard (SUM, IF, VLOOKUP...), jiġifieri daħħal f’kull ċellula, billi tispeċifika l-valur tal-ammont bil-VAT bħala argument:
… jew daħħal permezz tal-kaxxa tad-djalogu standard biex tiddaħħal funzjoni (buttuna fx fil-bar tal-formula), tagħżel kategorija Iddefinit mill-Utent (Iddefinit mill-Utent):
L-uniku mument spjaċevoli hawnhekk huwa n-nuqqas tad-deskrizzjoni tas-soltu tal-funzjoni fil-qiegħ tat-tieqa. Biex iżżidha trid tagħmel dan li ġej:
- Iftaħ l-Editur Visual Basic b'shortcut tat-tastiera Alt+F11
- Agħżel il-add-in fil-pannell tal-Proġett u agħfas iċ-ċavetta F2biex tiftaħ it-tieqa Object Browser
- Agħżel il-proġett add-in tiegħek mil-lista drop-down fil-quċċata tat-tieqa
- Ikklikkja bil-lemin fuq il-funzjoni li tidher u agħżel kmand Properties.
- Daħħal deskrizzjoni tal-funzjoni fit-tieqa deskrizzjoni
- Issejvja l-fajl add-in u terġa 'tibda excel.
Wara li terġa 'tibda, il-funzjoni għandha turi d-deskrizzjoni li daħħalna:
Pass 5. Oħloq tab add-on fl-interface
Il-mess finali, għalkemm mhux obbligatorju, iżda pjaċevoli se jkun il-ħolqien ta 'tab separata b'buttuna biex tmexxi l-makro tagħna, li se tidher fl-interface ta' Excel wara li tikkonnettja l-add-in tagħna.
Informazzjoni dwar it-tabs li jintwerew awtomatikament tinsab fil-ktieb u għandha tkun ifformattjata f'kodiċi XML speċjali. L-eħfef mod biex tikteb u teditja kodiċi bħal dan huwa bl-għajnuna ta 'programmi speċjali - edituri XML. Wieħed mill-aktar konvenjenti (u b'xejn) huwa l-programm ta' Maxim Novikov Ribbon XML Editur.
L-algoritmu biex taħdem miegħu huwa kif ġej:
- Agħlaq it-twieqi kollha ta 'Excel sabiex ma jkun hemm l-ebda kunflitt ta' fajls meta neditjaw il-kodiċi XML add-in.
- Niedi l-programm Ribbon XML Editor u iftaħ il-fajl MyExcelAddin.xlam tagħna fih
- Bil-buttuna tabs fir-rokna ta' fuq tax-xellug, żid is-snippet tal-kodiċi għat-tab il-ġdida:
- Trid tpoġġi kwotazzjonijiet vojta id it-tab u l-grupp tagħna (kwalunkwe identifikaturi uniċi), u fi tikketta – l-ismijiet tat-tab tagħna u grupp ta’ buttuni fuqha:
- Bil-buttuna buttuna fuq il-pannell tax-xellug, żid kodiċi vojt għall-buttuna u żid tags magħha:
— tikketta huwa t-test fuq il-buttuna
— imageMso — dan huwa l-isem kundizzjonali tal-immaġni fuq il-buttuna. Jien użajt ikona tal-buttuna ħamra msejħa AnimationCustomAddExitDialog. L-ismijiet tal-buttuni kollha disponibbli (u hemm bosta mijiet minnhom!) Jistgħu jinstabu fuq numru kbir ta 'siti fuq l-Internet jekk tfittex il-kliem ewlieni "imageMso". Biex nibdew, tista 'tmur hawn.
- onAction – dan huwa l-isem tal-proċedura callback – makro qasir speċjali li se jmexxi l-makro prinċipali tagħna FormulasToValues. Tista' ċċempel din il-proċedura kif tixtieq. Inżiduha ftit aktar tard.
- Tista 'tiċċekkja l-korrettezza ta' dak kollu li sar billi tuża l-buttuna b'marka ta 'kontroll ħadra fin-naħa ta' fuq tal-toolbar. Fl-istess post, ikklikkja fuq il-buttuna b'floppy disk biex issalva l-bidliet kollha.
- Agħlaq il-Ribbon XML Editor
- Iftaħ Excel, mur l-editur Visual Basic u żid proċedura ta 'callback mal-makro tagħna KillFormulassabiex imexxi l-makro prinċipali tagħna biex tissostitwixxi l-formuli b'valuri.
- Aħna nissejvjaw il-bidliet u, nerġgħu lura lejn Excel, niċċekkjaw ir-riżultat:
Dak kollu – is-add-in huwa lest biex jintuża. Imla bil-proċeduri u l-funzjonijiet tiegħek stess, żid buttuni sbieħ - u se jsir ħafna aktar faċli li tuża macros fix-xogħol tiegħek.
- X'inhuma macros, kif tużahom fix-xogħol tiegħek, fejn tikseb il-kodiċi makro fil-Visual Basic.
- Kif tagħmel splash screen meta tiftaħ ktieb tax-xogħol f'Excel
- X'inhu Ktieb Makro Personali u kif tużah