Kif toħloq is-add-in tiegħek għal Microsoft Excel

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:

  1. Iftaħ l-Editur Visual Basic b'shortcut tat-tastiera Alt+F11
  2. Agħżel il-add-in fil-pannell tal-Proġett u agħfas iċ-ċavetta F2biex tiftaħ it-tieqa Object Browser
  3. Agħżel il-proġett add-in tiegħek mil-lista drop-down fil-quċċata tat-tieqa
  4. Ikklikkja bil-lemin fuq il-funzjoni li tidher u agħżel kmand Properties.
  5. Daħħal deskrizzjoni tal-funzjoni fit-tieqa deskrizzjoni
  6. 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:

  1. Agħlaq it-twieqi kollha ta 'Excel sabiex ma jkun hemm l-ebda kunflitt ta' fajls meta neditjaw il-kodiċi XML add-in.
  2. Niedi l-programm Ribbon XML Editor u iftaħ il-fajl MyExcelAddin.xlam tagħna fih
  3. Bil-buttuna tabs fir-rokna ta' fuq tax-xellug, żid is-snippet tal-kodiċi għat-tab il-ġdida:
  4. 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:
  5. 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.

  6. 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.
  7. Agħlaq il-Ribbon XML Editor
  8. 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.
  9. 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

Ħalli Irrispondi