Bii o ṣe le ṣẹda afikun ti ara rẹ fun Microsoft Excel

Paapa ti o ko ba mọ bi o ṣe le ṣe eto, ọpọlọpọ awọn aaye wa (awọn iwe, awọn oju opo wẹẹbu, awọn apejọ) nibiti o ti le rii koodu macro VBA ti o ṣetan fun nọmba nla ti awọn iṣẹ ṣiṣe aṣoju ni Excel. Ninu iriri mi, ọpọlọpọ awọn olumulo laipẹ tabi ya gba ikojọpọ ti ara ẹni ti awọn macros lati ṣe adaṣe awọn ilana ṣiṣe ṣiṣe, boya o tumọ awọn agbekalẹ sinu awọn iye, iṣafihan awọn akopọ ninu awọn ọrọ, tabi akojọpọ awọn sẹẹli nipasẹ awọ. Ati nibi iṣoro naa waye - koodu macro ni Visual Basic nilo lati wa ni ipamọ ni ibikan lati le lo nigbamii ni iṣẹ.

Aṣayan ti o rọrun julọ ni lati ṣafipamọ koodu macro taara ni faili iṣẹ nipa lilọ si olootu Ipilẹ wiwo nipa lilo ọna abuja keyboard. alt+F11 ati fifi titun sofo module nipasẹ awọn akojọ Fi sii - Module:

Sibẹsibẹ, ọpọlọpọ awọn alailanfani wa pẹlu ọna yii:

  • Ti ọpọlọpọ awọn faili iṣẹ ba wa, ati pe a nilo macro kan nibi gbogbo, gẹgẹbi macro fun iyipada awọn agbekalẹ sinu awọn iye, lẹhinna o yoo ni lati daakọ koodu naa. ni gbogbo iwe.
  • Ko gbọdọ gbagbe fi faili pamọ ni ọna kika macro-sise (xlsm) tabi ni ọna kika iwe alakomeji (xlsb).
  • Nigbati o ba ṣii iru faili kan Makiro Idaabobo ni akoko kọọkan yoo fun ikilọ kan ti o nilo lati jẹwọ (daradara, tabi mu aabo kuro patapata, eyiti o le ma jẹ iwunilori nigbagbogbo).

Ojutu yangan diẹ sii yoo jẹ lati ṣẹda Fikun-un tirẹ (Fikun-un Excel) - faili lọtọ ti ọna kika pataki kan (xlam) ti o ni gbogbo awọn macros “ayanfẹ” rẹ ninu. Awọn anfani ti ọna yii:

  • Yoo to so add-on lẹẹkan ni Tayo - ati pe o le lo awọn ilana ati awọn iṣẹ VBA rẹ ni eyikeyi faili lori kọnputa yii. Ṣiṣe atunṣe awọn faili iṣẹ rẹ ni xlsm- ati awọn ọna kika xlsb, nitorinaa, ko nilo, nitori. koodu orisun kii yoo wa ni ipamọ ninu wọn, ṣugbọn ninu faili afikun.
  • Idaabobo o yoo wa ko le idaamu nipa macros, boya. add-ons jẹ, nipasẹ asọye, awọn orisun ti a gbẹkẹle.
  • Le ṣe lọtọ taabu lori ribbon Tayo pẹlu awọn bọtini ti o wuyi lati ṣiṣẹ awọn macro afikun.
  • Fikun-un jẹ faili lọtọ. Tirẹ rọrun lati gbe lati kọnputa si kọnputa, pin pẹlu awọn ẹlẹgbẹ tabi paapaa ta 😉

Jẹ ki a rin nipasẹ gbogbo ilana ti ṣiṣẹda Microsoft Excel ti ara rẹ ni igbesẹ nipasẹ igbese.

Igbesẹ 1. Ṣẹda faili afikun kan

Ṣii Microsoft Excel pẹlu iwe iṣẹ ofo kan ki o fipamọ si labẹ orukọ eyikeyi ti o dara (fun apẹẹrẹ MyExcelAddini) ni ọna kika afikun pẹlu aṣẹ Faili – Fipamọ Bi tabi awọn bọtini F12, ti n ṣalaye iru faili naa Tayo Fikun-ni:

Jọwọ ṣakiyesi pe nipasẹ aiyipada awọn ile-itaja Excel awọn ifikun-inu ni C: UsersYour_nameAppDataRoamingMicrosoftAddIns folda, ṣugbọn, ni ipilẹ, o le pato eyikeyi folda miiran ti o rọrun fun ọ.

Igbese 2. A so awọn ti a ṣẹda fi-ni

Bayi afikun ti a ṣẹda ni igbesẹ ti o kẹhin MyExcelAddini gbọdọ wa ni asopọ si Excel. Lati ṣe eyi, lọ si akojọ aṣayan Faili – Awọn aṣayan – Awọn afikun (Faili - Awọn aṣayan - Fikun-inu), tẹ lori bọtini Nipa (Lọ) ni isalẹ ti window. Ninu ferese ti o ṣii, tẹ bọtini naa Atunwo (Ṣawakiri) ati pato ipo ti faili afikun wa.

Ti o ba ṣe ohun gbogbo ti o tọ, lẹhinna tiwa MyExcelAddini yẹ ki o han ninu atokọ ti awọn afikun ti o wa:

Igbese 3. Fi macros si awọn fi-ni

Fikun-un wa ni asopọ si Excel ati pe o ṣiṣẹ ni aṣeyọri, ṣugbọn ko si macro kan ninu rẹ sibẹsibẹ. Jẹ ki a kun. Lati ṣe eyi, ṣii olootu Ipilẹ Visual pẹlu ọna abuja keyboard alt+F11 tabi nipasẹ bọtini visual Ipilẹ taabu developer (Olùgbéejáde). Ti awọn taabu developer ko han, o le wa ni han nipasẹ Faili – Awọn aṣayan – Ribbon Setup (Faili - Awọn aṣayan - Ṣe akanṣe Ribbon).

Ferese yẹ ki o wa ni igun apa osi oke ti olootu Project (ti ko ba han, lẹhinna tan-an nipasẹ akojọ aṣayan Wo - Project Explorer):

Ferese yii ṣafihan gbogbo awọn iwe iṣẹ ṣiṣi ati ṣiṣiṣẹ awọn afikun Microsoft Excel, pẹlu tiwa. VBAProject (MyExcelAddin.xlam) Yan pẹlu Asin ki o ṣafikun module tuntun si rẹ nipasẹ akojọ aṣayan Fi sii - Module. Ninu module yii, a yoo tọju koodu VBA ti awọn macros afikun wa.

O le boya tẹ koodu lati ibere (ti o ba mọ bi o ṣe le ṣe eto), tabi daakọ lati ibikan ti a ti ṣetan (eyiti o rọrun pupọ). Jẹ ki a, fun idanwo, tẹ koodu ti macro ti o rọrun ṣugbọn iwulo sinu module ofo ti a ṣafikun:

Lẹhin titẹ koodu sii, maṣe gbagbe lati tẹ bọtini fifipamọ (disiki) ni igun apa osi oke.

Makiro wa FormulasToValues, bi o ṣe le ni irọrun fojuinu, ṣe iyipada awọn agbekalẹ si awọn iye ni ibiti a ti yan tẹlẹ. Nigba miiran a tun pe awọn macros wọnyi ilana. Lati ṣiṣẹ, o nilo lati yan awọn sẹẹli pẹlu awọn agbekalẹ ati ṣii apoti ibaraẹnisọrọ pataki kan Makiro lati taabu developer (Olùgbéejáde - Macros) tabi ọna abuja keyboard alt+F8. Ni deede, window yii fihan awọn macros ti o wa lati gbogbo awọn iwe iṣẹ ṣiṣi, ṣugbọn awọn macro afikun ko han nibi. Bi o ti jẹ pe eyi, a le tẹ orukọ ilana wa sii ni aaye Makiro orukọ (Orukọ Makiro)ati ki o tẹ bọtini naa Run (ṣiṣe) - ati macro wa yoo ṣiṣẹ:

    

Nibi o tun le yan ọna abuja bọtini itẹwe lati ṣe ifilọlẹ Makiro ni kiakia - bọtini naa jẹ iduro fun eyi sile (Aṣayan) ni išaaju window Macro:

Nigbati o ba n yan awọn bọtini, ni lokan pe wọn jẹ ifarabalẹ ọran ati ifarabalẹ ifilelẹ keyboard. Nitorina ti o ba fun ni akojọpọ bi Konturolu+Й, then, in fact, in the future you will have to make sure that you have the layout turned on and press additionally naficulalati gba lẹta nla naa.

Fun irọrun, a tun le ṣafikun bọtini kan fun macro wa si ọpa irinṣẹ wiwọle yara yara ni igun apa osi ti window naa. Lati ṣe eyi, yan Faili – Awọn aṣayan – Ọpa Wiwọle ni iyara (Faili - Awọn aṣayan - Ṣe akanṣe Ọpa Wiwọle ni iyara), ati lẹhinna ninu atokọ jabọ-silẹ ni oke ti window aṣayan Makiro. Lẹhin iyẹn macro wa FormulasToValues le wa ni gbe lori nronu pẹlu awọn bọtini fi (Fi kun) ki o si yan aami fun o pẹlu awọn bọtini ayipada [Ṣatunkọ]:

Igbesẹ 4. Fi awọn iṣẹ kun si afikun

ṣugbọn Makiro-ilana, awọn tun wa Makiro iṣẹ tabi bi a ti n pe wọn UDF (Olumulo Išẹ asọye = iṣẹ asọye olumulo). Jẹ ki a ṣẹda module lọtọ ninu afikun wa (aṣẹ akojọ aṣayan Fi sii - Module) ki o si lẹẹmọ koodu iṣẹ atẹle nibẹ:

O rọrun lati rii pe iṣẹ yii nilo lati yọ VAT kuro ninu iye pẹlu VAT. Kii ṣe binomial Newton, dajudaju, ṣugbọn yoo ṣe fun wa bi apẹẹrẹ lati ṣafihan awọn ipilẹ ipilẹ.

Ṣe akiyesi pe sintasi iṣẹ kan yatọ si ilana kan:

  • ikole ti lo Iṣẹ…. Ipari Išẹ dipo Ipin… Ipari Ipin
  • lẹhin orukọ iṣẹ naa, awọn ariyanjiyan rẹ ni itọkasi ni awọn biraketi
  • ninu ara ti iṣẹ naa, awọn iṣiro pataki ni a ṣe ati lẹhinna abajade ti pin si oniyipada pẹlu orukọ iṣẹ naa.

Tun ṣe akiyesi pe iṣẹ yii ko nilo, ati pe ko ṣee ṣe lati ṣiṣẹ bii ilana macro ti tẹlẹ nipasẹ apoti ajọṣọ Makiro ati bọtini Run. Iru iṣẹ macro kan yẹ ki o lo bi iṣẹ iṣẹ ṣiṣe boṣewa (SUM, IF, VLOOKUP…), ie kan tẹ sinu sẹẹli eyikeyi, ti n ṣalaye iye iye pẹlu VAT bi ariyanjiyan:

tabi tẹ nipasẹ apoti ifọrọwerọ boṣewa fun fifi iṣẹ sii (bọtini fx ninu ọpa agbekalẹ), yiyan ẹka kan Itumọ Olumulo (Ṣitumọ olumulo):

Awọn nikan unpleasant akoko nibi ni awọn isansa ti awọn ibùgbé apejuwe ti awọn iṣẹ ni isalẹ ti awọn window. Lati ṣafikun o yoo ni lati ṣe atẹle naa:

  1. Ṣii Olootu Ipilẹ Visual pẹlu ọna abuja keyboard kan alt+F11
  2. Yan awọn fi-ni ninu awọn Project nronu ki o si tẹ awọn bọtini F2lati ṣii ferese Aṣàwákiri Nkan
  3. Yan iṣẹ akanṣe afikun rẹ lati atokọ jabọ-silẹ ni oke ti window naa
  4. Tẹ-ọtun lori iṣẹ ti o han ko si yan pipaṣẹ Properties.
  5. Tẹ ijuwe ti iṣẹ naa sinu window Apejuwe
  6. Ṣafipamọ faili afikun ki o si tun tayo.

Lẹhin ti tun bẹrẹ, iṣẹ naa yẹ ki o ṣafihan apejuwe ti a tẹ sii:

Igbese 5. Ṣẹda ohun fi-lori taabu ni wiwo

Ikẹhin, botilẹjẹpe kii ṣe dandan, ṣugbọn ifọwọkan didùn yoo jẹ ẹda ti taabu ọtọtọ pẹlu bọtini kan lati ṣiṣẹ macro wa, eyiti yoo han ni wiwo Excel lẹhin ti o so afikun wa.

Alaye nipa awọn taabu ti o han nipasẹ aiyipada wa ninu iwe ati pe o gbọdọ ṣe akoonu ni koodu XML pataki kan. Ọna to rọọrun lati kọ ati satunkọ iru koodu jẹ pẹlu iranlọwọ ti awọn eto pataki - awọn olootu XML. Ọkan ninu irọrun julọ (ati ọfẹ) jẹ eto Maxim Novikov Ribbon XML Olootu.

Algoridimu fun ṣiṣẹ pẹlu rẹ jẹ bi atẹle:

  1. Pa gbogbo awọn window Tayo kuro ki ko si ija faili nigba ti a ṣatunkọ koodu XML afikun.
  2. Lọlẹ Ribbon XML Olootu eto ki o si ṣi MyExcelAddin.xlam faili wa ninu rẹ
  3. Pẹlu bọtini awọn taabu ni igun apa osi oke, ṣafikun snippet koodu fun taabu tuntun:
  4. O nilo lati fi awọn agbasọ ọrọ si ṣofo id taabu wa ati ẹgbẹ (eyikeyi awọn idamọ alailẹgbẹ), ati ni aami - awọn orukọ ti taabu wa ati ẹgbẹ awọn bọtini lori rẹ:
  5. Pẹlu bọtini bọtìnnì ni apa osi, ṣafikun koodu òfo fun bọtini naa ki o ṣafikun awọn afi si rẹ:

    - aami ni ọrọ lori bọtini

    - aworanMso - Eyi ni orukọ ipo ti aworan lori bọtini. Mo lo aami bọtini pupa kan ti a pe ni AnimationCustomAddExitDialog. Awọn orukọ ti gbogbo awọn bọtini ti o wa (ati pe awọn ọgọọgọrun wọn wa!) O le rii lori nọmba nla ti awọn aaye lori Intanẹẹti ti o ba wa awọn koko-ọrọ “imageMso”. Fun awọn ibẹrẹ, o le lọ si ibi.

    - lori Iṣe - Eyi ni orukọ ilana ipe pada - macro kukuru pataki kan ti yoo ṣiṣẹ macro akọkọ wa FormulasToValues. O le pe ilana yii ohunkohun ti o fẹ. A yoo fi sii diẹ diẹ.

  6. O le ṣayẹwo deede ohun gbogbo ti a ṣe nipa lilo bọtini pẹlu ami ayẹwo alawọ ewe lori oke ọpa irinṣẹ. Ni aaye kanna, tẹ bọtini naa pẹlu disiki floppy kan lati fipamọ gbogbo awọn ayipada.
  7. Pa Ribbon XML Olootu
  8. Ṣii Excel, lọ si olootu Ipilẹ wiwo ati ṣafikun ilana ipe pada si macro wa KillFormulaski o nṣiṣẹ macro akọkọ wa fun rirọpo awọn agbekalẹ pẹlu awọn iye.
  9. A fipamọ awọn ayipada ati, pada si Excel, ṣayẹwo abajade:

Iyẹn ni gbogbo rẹ – afikun ti ṣetan lati lo. Fọwọsi pẹlu awọn ilana ati awọn iṣẹ tirẹ, ṣafikun awọn bọtini lẹwa - ati pe yoo rọrun pupọ lati lo awọn macros ninu iṣẹ rẹ.

  • Kini macros, bii o ṣe le lo wọn ninu iṣẹ rẹ, nibo ni lati gba koodu macro ni Ipilẹ wiwo.
  • Bii o ṣe le ṣe iboju asesejade nigba ṣiṣi iwe iṣẹ ni Excel
  • Kini Iwe Makiro Ti ara ẹni ati bii o ṣe le lo

Fi a Reply