Kā izveidot savu Microsoft Excel pievienojumprogrammu

Pat ja jūs nezināt, kā programmēt, ir daudz vietu (grāmatas, vietnes, forumi), kur varat atrast gatavu VBA makro kodu lielam skaitam tipisku uzdevumu programmā Excel. Mana pieredze liecina, ka lielākā daļa lietotāju agrāk vai vēlāk savāc savu personīgo makro kolekciju, lai automatizētu rutīnas procesus, neatkarīgi no tā, vai tā ir formulas tulkošana vērtībās, summu parādīšana vārdos vai šūnu summēšana pēc krāsas. Un te rodas problēma – Visual Basic makrokods ir kaut kur jāsaglabā, lai to vēlāk varētu izmantot darbā.

Vienkāršākā iespēja ir saglabāt makro kodu tieši darba failā, dodoties uz Visual Basic redaktoru, izmantojot īsinājumtaustiņu cits+F11 un pievienojot jaunu tukšu moduli, izmantojot izvēlni Ievietot - modulis:

Tomēr šai metodei ir vairāki trūkumi:

  • Ja ir daudz darba failu un visur ir nepieciešams makro, piemēram, makro formulas konvertēšanai vērtībās, kods būs jākopē. katrā grāmatā.
  • Nedrīkst aizmirst saglabājiet failu formātā ar iespējotu makro (xlsm) vai binārā grāmatas formātā (xlsb).
  • Atverot šādu failu makro aizsardzība katru reizi izdos brīdinājumu, kas ir jāapstiprina (labi, vai pilnībā atspējos aizsardzību, kas ne vienmēr var būt vēlams).

Elegantāks risinājums būtu radīt jūsu pievienojumprogramma (Excel pievienojumprogramma) – atsevišķs īpaša formāta (xlam) fails, kurā ir visi jūsu iecienītākie makro. Šīs pieejas priekšrocības:

  • Pietiks pievienojiet papildinājumu vienreiz programmā Excel — un jūs varat izmantot tās VBA procedūras un funkcijas jebkurā šī datora failā. Tādējādi darba failu atkārtota saglabāšana xlsm- un xlsb-formātā nav nepieciešama, jo. avota kods netiks saglabāts tajos, bet gan pievienojumprogrammas failā.
  • aizsardzība jūs netraucēs arī makro. papildinājumi pēc definīcijas ir uzticami avoti.
  • Var darīt atsevišķa cilne Excel lentē ar jaukām pogām, lai palaistu pievienojumprogrammu makro.
  • Papildinājums ir atsevišķs fails. Viņa viegli veikt no datora uz datoru, kopīgojiet to ar kolēģiem vai pat pārdodiet to 😉

Soli pa solim apskatīsim visu Microsoft Excel pievienojumprogrammas izveides procesu.

1. darbība. Izveidojiet pievienojumprogrammas failu

Atveriet Microsoft Excel ar tukšu darbgrāmatu un saglabājiet to ar jebkuru piemērotu nosaukumu (piemēram, MyExcelAddin) pievienojumprogrammas formātā ar komandu Fails - Saglabāt kā vai atslēgas F12, norādot faila tipu Excel pievienojumprogramma:

Lūdzu, ņemiet vērā, ka pēc noklusējuma Excel pievienojumprogrammas tiek glabātas mapē C:UsersYour_nameAppDataRoamingMicrosoftAddIns, taču principā varat norādīt jebkuru citu jums ērtu mapi.

Solis 2. Savienojam izveidoto pievienojumprogrammu

Tagad pievienojumprogramma, ko izveidojām pēdējā darbībā MyExcelAddin jābūt savienotam ar Excel. Lai to izdarītu, dodieties uz izvēlni Fails - Opcijas - Papildinājumi (Fails — Opcijas — pievienojumprogrammas), noklikšķiniet uz pogas Par mums (Aiziet) loga apakšā. Atvērtajā logā noklikšķiniet uz pogas Pārskats (Pārlūkot) un norādiet mūsu pievienojumprogrammas faila atrašanās vietu.

Ja jūs visu izdarījāt pareizi, tad mūsu MyExcelAddin ir jāparādās pieejamo papildinājumu sarakstā:

3. darbība. Pievienojiet pievienojumprogrammai makro

Mūsu pievienojumprogramma ir savienota ar programmu Excel un darbojas veiksmīgi, taču tajā vēl nav neviena makro. Aizpildīsim to. Lai to izdarītu, atveriet Visual Basic redaktoru, izmantojot īsinājumtaustiņu cits+F11 vai ar pogu Visual Basic tab attīstītājs (Izstrādātājs). Ja cilnes attīstītājs nav redzams, to var parādīt cauri Fails - Opcijas - Lentes iestatīšana (Fails — opcijas — pielāgot lenti).

Redaktora augšējā kreisajā stūrī ir jābūt logam projekts (ja tas nav redzams, ieslēdziet to izvēlnē Skats — Project Explorer):

Šajā logā tiek parādītas visas atvērtās darbgrāmatas un darbojošās Microsoft Excel pievienojumprogrammas, tostarp mūsu. VBAProject (MyExcelAddin.xlam) Atlasiet to ar peli un pievienojiet tam jaunu moduli, izmantojot izvēlni Ievietot - modulis. Šajā modulī mēs saglabāsim mūsu pievienojumprogrammu makro VBA kodu.

Varat vai nu ierakstīt kodu no jauna (ja zināt, kā programmēt), vai arī nokopēt no kaut kur gatava (kas ir daudz vienkāršāk). Pārbaudei pievienotajā tukšajā modulī ievadīsim vienkārša, bet noderīga makro kodu:

Pēc koda ievadīšanas neaizmirstiet noklikšķināt uz saglabāšanas pogas (disketes) augšējā kreisajā stūrī.

Mūsu makro FormulasToValues, kā jūs viegli varat iedomāties, pārvērš formulas vērtībās iepriekš atlasītā diapazonā. Dažreiz šie makro tiek saukti arī par procedūrām. Lai to palaistu, ir jāatlasa šūnas ar formulām un jāatver īpašs dialoglodziņš Makro no cilnes attīstītājs (Izstrādātājs — makro) vai īsinājumtaustiņš cits+F8. Parasti šajā logā tiek rādīti pieejamie makro no visām atvērtajām darbgrāmatām, taču pievienojumprogrammu makro šeit nav redzami. Neskatoties uz to, laukā varam ievadīt savas procedūras nosaukumu makro nosaukums (Makro nosaukums)un pēc tam noklikšķiniet uz pogas skrējiens (skriet) - un mūsu makro darbosies:

    

Šeit varat arī piešķirt īsinājumtaustiņu, lai ātri palaistu makro — par to ir atbildīga poga parametri (Opcijas) iepriekšējā logā Makro:

Piešķirot taustiņus, ņemiet vērā, ka tie ir reģistrjutīgi un jutīgi pret tastatūras izkārtojumu. Tātad, ja piešķirat tādu kombināciju kā Ctrl+Й, tad patiesībā turpmāk būs jāpārliecinās, vai ir ieslēgts izkārtojums un papildus jānospiež maiņalai iegūtu lielo burtu.

Ērtības labad ātrās piekļuves rīkjoslai loga augšējā kreisajā stūrī varam pievienot arī pogu savam makro. Lai to izdarītu, atlasiet Fails - Opcijas - Ātrās piekļuves rīkjosla (Fails — opcijas — pielāgot ātrās piekļuves rīkjoslu), un pēc tam loga augšdaļā esošajā nolaižamajā sarakstā atlasiet opciju Makro. Pēc tam mūsu makro FormulasToValues var novietot uz paneļa ar pogu Pievienot (Pievienot) un atlasiet tai ikonu ar pogu Mainīt (Edit):

4. darbība. Pievienojiet pievienojumprogrammai funkcijas

Bet makroprocedūras, Tur ir arī funkciju makro vai kā tos sauc UDF (Lietotāja definēta funkcija = lietotāja definēta funkcija). Izveidosim atsevišķu moduli mūsu papildinājumā (izvēlnes komanda Ievietot - modulis) un ielīmējiet tur šādas funkcijas kodu:

Ir viegli saprast, ka šī funkcija ir nepieciešama, lai no summas ar PVN izņemtu PVN. Protams, ne Ņūtona binomiāls, bet tas mums noderēs kā piemērs, lai parādītu pamatprincipus.

Ņemiet vērā, ka funkcijas sintakse atšķiras no procedūras:

  • tiek izmantota būvniecība Funkcija…. Beigu funkcija vietā Apakšdaļa … Beigas Apakš
  • aiz funkcijas nosaukuma iekavās norādīti tās argumenti
  • funkcijas pamattekstā tiek veikti nepieciešamie aprēķini un pēc tam rezultāts tiek piešķirts mainīgajam ar funkcijas nosaukumu

Ņemiet vērā arī to, ka šī funkcija nav nepieciešama, un dialoglodziņā nav iespējams palaist tāpat kā iepriekšējo makro procedūru Makro un pogu skrējiens. Šāda makro funkcija ir jāizmanto kā standarta darblapas funkcija (SUM, IF, VLOOKUP…), ti, vienkārši ievadiet jebkurā šūnā, norādot summas vērtību ar PVN kā argumentu:

… vai ievadiet standarta dialoglodziņā funkcijas ievietošanai (poga fx formulas joslā), atlasot kategoriju Lietotājs definēts (Lietotājs definēts):

Vienīgais nepatīkamais brīdis šeit ir parastā funkcijas apraksta trūkums loga apakšā. Lai to pievienotu, jums būs jāveic šādas darbības:

  1. Atveriet Visual Basic redaktoru, izmantojot īsinājumtaustiņus cits+F11
  2. Projekta panelī atlasiet pievienojumprogrammu un nospiediet taustiņu F2lai atvērtu objektu pārlūkprogrammas logu
  3. Loga augšdaļā esošajā nolaižamajā sarakstā atlasiet savu pievienojumprogrammas projektu
  4. Ar peles labo pogu noklikšķiniet uz parādītās funkcijas un atlasiet komandu Rekvizīti.
  5. Logā ievadiet funkcijas aprakstu Apraksts
  6. Saglabājiet pievienojumprogrammas failu un restartējiet programmu Excel.

Pēc restartēšanas funkcijai vajadzētu parādīt mūsu ievadīto aprakstu:

5. darbība. Interfeisā izveidojiet pievienojumprogrammas cilni

Pēdējais, lai arī ne obligāts, bet patīkamais pieskāriens būs atsevišķas cilnes izveide ar pogu, lai palaistu mūsu makro, kas parādīsies Excel saskarnē pēc pievienojumprogrammas pievienošanas.

Informācija par cilnēm, kas tiek rādītas pēc noklusējuma, ir ietverta grāmatā, un tā ir jāformatē īpašā XML kodā. Vienkāršākais veids, kā rakstīt un rediģēt šādu kodu, ir ar īpašu programmu palīdzību - XML ​​redaktoriem. Viena no ērtākajām (un bezmaksas) ir Maksima Novikova programma Lentes XML redaktors.

Algoritms darbam ar to ir šāds:

  1. Aizveriet visus Excel logus, lai, rediģējot pievienojumprogrammas XML kodu, nerastos failu konflikti.
  2. Palaidiet programmu Ribbon XML Editor un atveriet tajā failu MyExcelAddin.xlam
  3. Ar pogu cilnes augšējā kreisajā stūrī pievienojiet koda fragmentu jaunajai cilnei:
  4. Jāliek tukšas pēdiņas id mūsu cilnē un grupā (jebkuri unikālie identifikatori) un iekšā etiķete – mūsu cilnes nosaukumi un pogu grupa uz tās:
  5. Ar pogu poga kreisajā panelī pievienojiet pogai tukšu kodu un pievienojiet tai atzīmes:

    - etiķete ir teksts uz pogas

    — imageMso — tas ir attēla nosacītais nosaukums uz pogas. Es izmantoju sarkanās pogas ikonu ar nosaukumu AnimationCustomAddExitDialog. Visu pieejamo pogu nosaukumus (un to ir vairāki simti!) var atrast daudzās vietnēs internetā, ja meklējat atslēgvārdus “imageMso”. Iesācējiem varat doties šeit.

    Sākot no onAction – tas ir atzvanīšanas procedūras nosaukums – īpašs īss makro, kas izpildīs mūsu galveno makro FormulasToValues. Jūs varat saukt šo procedūru kā vēlaties. Mēs to pievienosim nedaudz vēlāk.

  6. Varat pārbaudīt visu paveikto, izmantojot pogu ar zaļu atzīmi rīkjoslas augšpusē. Tajā pašā vietā noklikšķiniet uz pogas ar disketi, lai saglabātu visas izmaiņas.
  7. Aizveriet lentes XML redaktoru
  8. Atveriet programmu Excel, dodieties uz Visual Basic redaktoru un pievienojiet mūsu makro atzvanīšanas procedūru KillFormulaslai tas palaistu mūsu galveno makro formulu aizstāšanai ar vērtībām.
  9. Mēs saglabājam izmaiņas un, atgriežoties programmā Excel, pārbaudām rezultātu:

Tas arī viss — pievienojumprogramma ir gatava lietošanai. Aizpildiet to ar savām procedūrām un funkcijām, pievienojiet skaistas pogas – un makro būs daudz vieglāk izmantot savā darbā.

  • Kas ir makro, kā tos izmantot savā darbā, kur iegūt makro kodu programmā Visual Basic.
  • Kā izveidot uzplaiksnījumu, atverot darbgrāmatu programmā Excel
  • Kas ir personīgā makrogrāmata un kā to izmantot

Atstāj atbildi