Cara nggawe add-in dhewe kanggo Microsoft Excel

Sanajan sampeyan ora ngerti program, ana akeh panggonan (buku, situs web, forum) ing ngendi sampeyan bisa nemokake kode makro VBA sing wis siap kanggo akeh tugas khas ing Excel. Ing pengalamanku, umume pangguna cepet utawa mengko nglumpukake koleksi makro pribadi kanggo ngotomatisasi proses rutin, manawa nerjemahake rumus dadi nilai, nampilake jumlah ing tembung, utawa nyimpulake sel kanthi warna. Lan ing kene ana masalah - kode makro ing Visual Basic kudu disimpen ing endi wae supaya bisa digunakake ing karya.

Pilihan sing paling gampang yaiku nyimpen kode makro langsung ing file kerja kanthi pindhah menyang editor Visual Basic nggunakake trabasan keyboard Alt+F11 lan nambah modul kosong anyar liwat menu Insert - Modul:

Nanging, ana sawetara kekurangan karo metode iki:

  • Yen ana akeh file sing bisa digunakake, lan makro dibutuhake ing endi wae, kayata makro kanggo ngowahi rumus dadi nilai, mula sampeyan kudu nyalin kode kasebut. ing saben buku.
  • Ora kena dilalekake nyimpen file ing format macro-aktif (xlsm) utawa ing format buku binar (xlsb).
  • Nalika mbukak file kasebut pangayoman makro bakal saben wektu ngetokake bebaya sing kudu diakoni (uga, utawa mateni proteksi kanthi lengkap, sing bisa uga ora dikarepake).

Solusi sing luwih elegan yaiku nggawe add-in sampeyan dhewe (Excel Add-in) – file kapisah saka format khusus (xlam) ngemot kabeh "favorit" macros. Keuntungan saka pendekatan iki:

  • Iku bakal cukup nyambung add-on sapisan ing Excel - lan sampeyan bisa nggunakake prosedur lan fungsi VBA ing file apa wae ing komputer iki. Nyimpen file sing digunakake ing xlsm- lan xlsb-format, mangkono, ora dibutuhake, amarga. kode sumber ora bakal disimpen ing wong, nanging ing file add-in.
  • Protection sampeyan ora bakal keganggu dening macro, uga. add-ons, miturut definisi, sumber sing dipercaya.
  • Bisa nindakake tab kapisah ing pita Excel karo tombol becik kanggo mbukak nambah-in macro.
  • Add-in minangka file sing kapisah. Kang gampang digawa saka komputer menyang komputer, bareng karo kolega utawa malah ngedol 😉

Ayo mlaku liwat kabeh proses nggawe dhewe Microsoft Excel add-in langkah dening langkah.

Langkah 1. Nggawe file add-in

Bukak Microsoft Excel nganggo buku kerja kosong lan simpen ing jeneng sing cocog (contone MyExcelAddin) ing format tambahan kanthi printah File - Simpen Minangka utawa tombol F12, nemtokake jinis file Excel Add-in:

Wigati dimangerteni manawa Excel nyimpen add-in ing folder C:UsersYour_nameAppDataRoamingMicrosoftAddIns, nanging, ing asas, sampeyan bisa nemtokake folder liyane sing trep kanggo sampeyan.

Langkah 2. Kita nyambungake tambahan sing digawe

Saiki add-in sing digawe ing langkah pungkasan MyExcelAddin kudu disambungake menyang Excel. Kanggo nindakake iki, pindhah menyang menu File – Pilihan – Add-ons (File - Pilihan - Add-Ins), klik ing tombol About (Tindak) ing ngisor jendhela. Ing jendhela sing mbukak, klik tombol kasebut review (Njelajah) lan nemtokake lokasi file add-in kita.

Yen sampeyan nindakake kabeh kanthi bener, banjur kita MyExcelAddin kudu katon ing dhaptar tambahan sing kasedhiya:

Langkah 3. Tambah macro menyang add-in

Add-in kita disambungake menyang Excel lan bisa digunakake kanthi sukses, nanging durung ana makro siji. Ayo ngisi. Kanggo nindakake iki, bukak editor Visual Basic kanthi trabasan keyboard Alt+F11 utawa kanthi tombol visual Basic tab pangembang (Pengembang). Yen tab pangembang ora katon, bisa ditampilake liwat File - Pilihan - Setup Pita (File - Pilihan - Kustomisasi Pita).

Mesthine ana jendhela ing pojok kiwa ndhuwur editor project (yen ora katon, uripake liwat menu Ndeleng - Project Explorer):

Jendhela iki nampilake kabeh buku kerja sing mbukak lan mbukak tambahan Microsoft Excel, kalebu kita. Proyek VBA (MyExcelAddin.xlam) Pilih nganggo mouse lan tambahake modul anyar liwat menu Insert - Modul. Ing modul iki, kita bakal nyimpen kode VBA saka macro add-in kita.

Sampeyan bisa ngetik kode saka ngeruk (yen sampeyan ngerti carane program), utawa nyalin saka ngendi wae siap-digawe (sing luwih gampang). Ayo, kanggo nguji, ketik kode makro sing prasaja nanging migunani menyang modul kosong sing ditambahake:

Sawise ngetik kode, aja lali klik tombol simpen (disket) ing pojok kiwa ndhuwur.

Makro kita FormulasToValues, kaya sing bisa dibayangake kanthi gampang, ngowahi rumus dadi nilai ing sawetara sing wis dipilih. Kadhangkala macro iki uga disebut tata cara. Kanggo mbukak, sampeyan kudu milih sel kanthi rumus lan mbukak kothak dialog khusus macro saka tab pangembang (Pangembang - Makro) utawa trabasan keyboard Alt+F8. Biasane, jendhela iki nuduhake makro sing kasedhiya saka kabeh buku kerja sing mbukak, nanging makro tambahan ora katon ing kene. Senadyan iki, kita bisa ngetik jeneng prosedur kita ing lapangan jeneng makro (jeneng makro)banjur klik tombol Run (mlayu) - lan makro kita bakal bisa digunakake:

    

Ing kene sampeyan uga bisa nemtokake trabasan keyboard kanggo mbukak makro kanthi cepet - tombol kasebut tanggung jawab kanggo iki paramèter (Pilihan) ing jendhela sadurunge Macro:

Nalika nemtokake tombol, elinga yen tombol kasebut sensitif huruf cilik lan sensitif tata letak keyboard. Dadi yen sampeyan nemtokake kombinasi kaya Ctrl+Й, banjur, nyatane, ing mangsa ngarep sampeyan kudu nggawe manawa tata letak wis diuripake lan pencet tambahan shiftkanggo njaluk huruf kapital.

Kanggo penak, kita uga bisa nambah tombol kanggo macro kita menyang toolbar akses cepet ing sudhut kiwa ndhuwur jendhela. Kanggo nindakake iki, pilih File - Pilihan - Toolbar Akses Cepet (File — Pilihan — Kustomisasi Toolbar Akses Cepet), banjur ing dhaptar gulung mudhun ing sisih ndhuwur jendhela pilihan macro. Sawise macro kita FormulasToValues bisa diselehake ing panel karo tombol Tambah (Tambah) lan pilih lambang karo tombol Ganti (Edit):

Langkah 4. Tambah fungsi kanggo nambah-in

nanging prosedur makro, uga ana fungsi makro utawa sing diarani UDF (User Defined Function = fungsi sing ditemtokake pangguna). Ayo nggawe modul sing kapisah ing add-on (menu command Insert - Modul) lan tempel kode fungsi ing ngisor iki ing kana:

Iku gampang kanggo ndeleng sing fungsi iki dibutuhake kanggo extract PPN saka jumlah kalebu PPN. Ora binomial Newton, mesthi, nanging bakal nindakake kanggo kita minangka conto kanggo nuduhake prinsip dhasar.

Elinga yen sintaks fungsi beda karo prosedur:

  • konstruksi digunakake Fungsi …. Fungsi End tinimbang Sub ... End Sub
  • sawise jeneng fungsi kasebut, argumen kasebut dituduhake ing kurung
  • ing awak fungsi kasebut, petungan sing dibutuhake ditindakake banjur asil kasebut ditugasake menyang variabel kanthi jeneng fungsi kasebut.

Uga Wigati sing fungsi iki ora perlu, lan iku mokal kanggo mbukak kaya prosedur macro sadurungé liwat kothak dialog macro lan tombol Run. Fungsi makro kasebut kudu digunakake minangka fungsi lembar kerja standar (SUM, IF, VLOOKUP…), yaiku ketik wae ing sel apa wae, nemtokake nilai jumlah kasebut kanthi PPN minangka argumen:

utawa ketik liwat kothak dialog standar kanggo nglebokake fungsi (tombol fx ing garis rumus), milih kategori Ditetepake pangguna (Ditetepake pangguna):

Siji-sijine wayahe sing ora nyenengake yaiku ora ana katrangan fungsi sing biasa ing sisih ngisor jendela. Kanggo nambah, sampeyan kudu nindakake ing ngisor iki:

  1. Bukak Editor Visual Basic kanthi trabasan keyboard Alt+F11
  2. Pilih add-in ing panel Project banjur pencet tombol kasebut F2kanggo mbukak jendhela Object Browser
  3. Pilih proyek tambahan saka dhaptar gulung ing sisih ndhuwur jendhela
  4. Klik-tengen ing fungsi sing katon banjur pilih printah Properties.
  5. Ketik katrangan fungsi ing jendhela Description
  6. Simpen file tambahan lan miwiti maneh Excel.

Sawise miwiti maneh, fungsi kasebut kudu nampilake katrangan sing kita lebokake:

Langkah 5. Nggawe tab tambahan ing antarmuka

Sentuhan pungkasan, sanajan ora wajib, nanging nyenengake bakal nggawe tab sing kapisah kanthi tombol kanggo mbukak makro kita, sing bakal katon ing antarmuka Excel sawise nyambungake add-in kita.

Informasi babagan tab sing ditampilake minangka standar ana ing buku kasebut lan kudu diformat nganggo kode XML khusus. Cara paling gampang kanggo nulis lan nyunting kode kasebut yaiku kanthi bantuan program khusus - editor XML. Salah siji sing paling trep (lan gratis) yaiku program Maxim Novikov Pita XML Editor.

Algoritma kanggo nggarap iku kaya ing ngisor iki:

  1. Nutup kabeh jendhela Excel supaya ora ana konflik file nalika ngowahi kode XML tambahan.
  2. Bukak program Ribbon XML Editor lan mbukak file MyExcelAddin.xlam kita ing
  3. Kanthi tombol tab ing pojok kiwa ndhuwur, tambahake potongan kode kanggo tab anyar:
  4. Sampeyan kudu nyelehake kuotasi kosong id tab lan grup kita (identifikasi unik apa wae), lan ing label – jeneng tab kita lan klompok tombol ing:
  5. Kanthi tombol tombol ing panel kiwa, tambahake kode kosong kanggo tombol kasebut lan tambahake tag:

    - label yaiku teks ing tombol

    - gambar Mso - iki jeneng kondisional saka gambar ing tombol. Aku nggunakake lambang tombol abang disebut AnimationCustomAddExitDialog. Jeneng kabeh tombol sing kasedhiya (lan ana sawetara atus!) Bisa ditemokake ing pirang-pirang situs ing Internet yen sampeyan nggoleki tembung kunci "imageMso". Kanggo wiwitan, sampeyan bisa pindhah menyang kene.

    - onAction - iki jeneng prosedur callback - makro singkat khusus sing bakal mbukak makro utama kita FormulasToValues. Sampeyan bisa nelpon prosedur iki apa wae sing disenengi. Kita bakal nambah sethitik mengko.

  6. Sampeyan bisa mriksa bener kabeh rampung nggunakake tombol kanthi tandha centhang ijo ing sisih ndhuwur toolbar. Ing panggonan sing padha, klik tombol nganggo floppy disk kanggo nyimpen kabeh owah-owahan.
  7. Nutup Editor XML Pita
  8. Bukak Excel, pindhah menyang editor Visual Basic lan tambahake prosedur panggilan maneh menyang makro kita KillFormulassupaya nganggo makro utama kita kanggo ngganti rumus karo nilai.
  9. Kita nyimpen owahan lan, bali menyang Excel, mriksa asil:

Sing kabeh - add-in siap digunakake. Isi karo prosedur lan fungsi sampeyan dhewe, tambahake tombol sing apik - lan bakal luwih gampang nggunakake makro ing karya sampeyan.

  • Apa macro, carane nggunakake ing karya, ngendi kanggo njaluk kode makro ing Visual Basic.
  • Cara nggawe layar cipratan nalika mbukak buku kerja ing Excel
  • Apa Buku Makro Pribadi lan cara nggunakake

Ninggalake a Reply