Kegunaan untuk pengaturcara VBA

Jika anda menyebut perkataan "makros" dengan nafas seram dan aksen pada suku kata kedua, dan frasa "Asas Visual untuk Aplikasi" terdengar seperti mantra kepada anda, maka artikel ini bukan untuk anda. Walau apa pun, buat masa ini 🙂

Jika anda mempunyai sekurang-kurangnya pengalaman dalam pengaturcaraan makro dalam VBA dalam Excel, dan anda tidak bercadang untuk berhenti, maka pemilihan tambahan dan atur cara yang berguna di bawah sepatutnya (sekurang-kurangnya sebahagiannya) berguna kepada anda.

MZ-Tools – “Pisau Switzerland” untuk pengaturcara

Selepas pemasangan dalam editor VBE dalam menu alat submenu akan muncul MZ-Tools dan bar alat baharu untuk akses pantas kepada fungsi yang sama:

Kegunaan untuk pengaturcara VBA

Dia tahu membuat banyak perkara. Antara yang paling berharga, pada pendapat saya:

  • Tambah "ikan kosong" secara automatik untuk mencipta prosedur, fungsi, acara dan pengendali ralat dengan penamaan pembolehubah yang betul mengikut sistem Hungary.
  • Salin kawalan pada borang pengguna bersama kodnya.
  • Buat penanda halaman (Kegemaran) untuk prosedur dan cepat beralih kepadanya dalam projek besar.
  • Pisahkan baris kod yang panjang kepada beberapa dan pasang kembali (pecah dan gabungkan baris).
  • Mengeluarkan statistik terperinci tentang projek (bilangan baris kod, prosedur, elemen pada borang, dll.)
  • Semak projek untuk pembolehubah dan prosedur yang tidak digunakan (Sumber Semakan)
  • Cipta asas templat kod anda sendiri (Templat Kod) untuk kes biasa dan masukkannya dengan cepat ke dalam makro baharu kemudian.
  • Buat rentetan yang panjang dan menakutkan secara automatik untuk menyambung ke sumber data luaran melalui ADO.
  • Lampirkan kekunci pintas pada mana-mana fungsi daripada alat tambah.

Satu yang jelas mesti ada untuk pengaturcara dari mana-mana peringkat. Jika anda mempunyai versi terkini Office, maka pastikan anda memuat turun versi terkini MZ-Tools 3.00.1218 bertarikh 1 Mac, kerana. ia membetulkan pepijat apabila bekerja dengan Excel 2013.  

pautan muat turun MZ-Tools

Inden Pintar – inden automatik dalam kod

Ia melakukan satu operasi yang mudah tetapi sangat diperlukan dengan baik - ia secara automatik memasukkan tab dalam kod VBA, dengan jelas menyerlahkan gelung bersarang, semakan keadaan, dsb.

Kegunaan untuk pengaturcara VBA

Adalah sangat mudah untuk menetapkan tindakan ini kepada mana-mana pintasan papan kekunci yang mudah dalam bahagian tersebut Pilihan Inden dan lakukan dengan satu sentuhan.

Malangnya, pengarang program itu telah meninggalkannya pada tahun 2005 (mengapa, Carl!?) dan versi terkini di tapak adalah untuk Excel 97-2003. Walau bagaimanapun, program ini berfungsi dengan baik dengan versi yang lebih baru. Satu-satunya kaveat: jika anda mempunyai Excel 2013, maka sebelum memasang Smart Indenter, anda mesti memasang versi terkini MZ-Tools dahulu, kerana. ia mengandungi perpustakaan dinamik yang diperlukan untuk kerja Indenter.

pautan muat turun Indentor Pintar

Alat VBE – elemen penalaan mikro dalam bentuk

Menjajarkan kawalan (butang, medan input, label teks, dsb.) pada bentuk yang kompleks boleh menyusahkan. Pengikatan standard pada grid editor melalui menu Alat — Pilihan — Umum — Jajarkan Kawalan ke Grid kadang-kadang ia tidak banyak membantu malah mula menghalang, terutamanya jika anda perlu bergerak, contohnya, butang sedikit sahaja. Alat tambah VBE akan membantu dalam perkara ini, yang, selepas pemasangan, memaparkan panel mudah di mana anda boleh memperhalusi saiz dan kedudukan pada borang untuk elemen yang dipilih:

Kegunaan untuk pengaturcara VBA

Peralihan kedudukan juga boleh dilakukan dengan anak panah Alt+, dan mengubah saiz dengan anak panah Shift+Alt+ dan anak panah Ctrl+Alt+.

Selain itu, dengan mengklik kanan pada elemen, anda boleh menamakan semula dengan segera bersama-sama dengan kod.

pautan muat turun Alat VBE

VBA Diff – Mencari Perbezaan dalam Kod

Alat ini mungkin lebih berguna untuk pengaturcara VBA profesional apabila mencipta projek besar dan kompleks atau pembangunan kolaboratif. Fungsi utamanya adalah untuk membandingkan dua projek dan memaparkan secara visual perbezaan dalam kod antara mereka:

Kegunaan untuk pengaturcara VBA

Terdapat tempoh percuma 30 hari, dan kemudian add-on akan meminta anda membayar 39 paun untuknya (kira-kira 3.5 ribu rubel pada kadar pertukaran semasa).

Terus terang, ia berguna dalam hidup saya hanya 3-4 kali pada projek yang sangat besar, tetapi kemudian ia menyelamatkan saya beberapa hari dan banyak sel saraf 🙂 Nah, selalu ada, sudah tentu, alternatif percuma: eksport kod ke fail teks (klik kanan modulo – Eksport) dan bandingkan kemudian dalam Microsoft Word menggunakan arahan Semakan – Bandingkan Dokumen, tetapi dengan bantuan VBA Diff ia adalah susunan magnitud yang lebih mudah.

pautan muat turun Perbezaan VBA

Moqups dan Wireframe Sketcher – prototaip antara muka

Apabila mencipta antara muka yang kompleks untuk interaksi pengguna, adalah sangat mudah untuk mereka bentuk lebih awal penampilan anggaran kotak dialog, iaitu laksanakan prototaip. Malah, ia ternyata lebih mudah daripada membuat semula borang siap sedia dan kodnya kemudian. Saya masih ingat pernah dalam salah satu projek pelanggan meminta untuk membuat "menu", yang bermaksud "tab". Setengah hari kerja masuk longkang 🙁

Terdapat sejumlah besar program berbayar dan percuma dengan tahap kerumitan dan kuasa yang berbeza untuk tugasan ini. Saya telah mencuba kira-kira sedozen program dan perkhidmatan sedemikian, dan baru-baru ini saya paling kerap menggunakan Moqup:

Kegunaan untuk pengaturcara VBA

Ini ialah editor dalam talian yang:

  • Tidak memerlukan pemasangan program berasingan. Anda sentiasa boleh datang ke pejabat pelanggan dan buka-tunjuk-perbetulkan antara muka yang dibuat terus di tapak.
  • Mengandungi semua elemen utama kotak dialog (label, butang, senarai, dll.) dalam versi untuk Windows dan Mac.
  • Membolehkan anda mengeksport antara muka yang dicipta dalam format PNG atau PDF atau menghantar pautan kepada klien untuk dilihat dalam talian.
  • Sebenarnya percuma. Terdapat had pada bilangan elemen grafik, tetapi saya tidak pernah berjaya melangkauinya. Jika anda kehabisan ruang atau ingin menyimpan beberapa projek besar sekaligus, anda sentiasa boleh menaik taraf kepada versi premium dengan harga $99 setahun.

Secara umum, untuk tugas pembangun dalam VBA – lebih daripada cukup, saya rasa.

Jika sesiapa pada asasnya memerlukan pilihan luar talian (untuk bekerja tanpa akses Internet di pantai, sebagai contoh), maka saya mengesyorkan Pelukis Rangka Dawai:

Kegunaan untuk pengaturcara VBA

Selepas tempoh demo percuma selama 2 minggu, dia akan meminta anda membeli dengan harga $99 yang sama.

Pautan ke Moqup

pautan muat turun Pelukis Rangka Dawai

Asas Halimunan – penyekat kod

Malangnya, tidak mungkin untuk mengunci kod sumber makro anda dengan selamat dengan kata laluan dalam Microsoft Excel. Walau bagaimanapun, terdapat seluruh kelas program yang dipanggil obfuscators (Dari bahasa Inggeris. mengelirukan – mengelirukan, mengelirukan), yang mengubah rupa kod VBA sedemikian rupa sehingga sukar untuk membaca dan memahaminya, iaitu:

  • nama pembolehubah, prosedur dan fungsi digantikan dengan set aksara panjang yang tidak bermakna atau, sebaliknya, dengan sebutan abjad pendek yang tidak dapat difahami
  • inden penjadualan visual dikeluarkan
  • dialih keluar atau, sebaliknya, pemisah baris diletakkan secara rawak, dsb.

Terus terang, saya bukan peminat menggunakan kaedah ini. Khususnya, dengan PLEX, saya memutuskan bahawa adalah lebih baik untuk memberikan pembeli versi penuh kod sumber terbuka, boleh difahami dan diulas - ini nampaknya saya lebih betul. Walau bagaimanapun, rakan pengaturcara saya telah berulang kali mengalami kes apabila program sedemikian akan sangat berguna (pengaturcara melakukan kerja, tetapi pelanggan tidak membayar, dll.) Jadi jika anda memerlukannya, ketahui di mana untuk mendapatkannya. “Kami adalah orang yang aman, tetapi kereta api berperisai kami…” dan semua itu.

muat turun Asas Halimunan

Pembersih Kod – pembersihan kod

Dalam proses mengusahakan projek (terutamanya jika ia besar dan panjang), "sampah" mula terkumpul dalam modul dan borang kod - sisa maklumat perkhidmatan editor VBE yang boleh membawa kepada gangguan yang tidak dijangka dan tidak diingini. Utiliti Pembersih Kod membersihkan kotoran ini dengan cara yang mudah tetapi boleh dipercayai: mengeksport kod daripada modul ke fail teks, dan kemudian mengimportnya kembali dengan bersih. Saya sangat mengesyorkan bahawa apabila bekerja pada projek besar, secara berkala melakukan "pembersihan".

pautan muat turun Pembersih Kod

Editor XML Reben

Jika anda ingin mencipta tab anda sendiri dengan butang cantik pada reben Excel untuk menjalankan makro anda, maka anda tidak boleh melakukannya tanpa editor fail XML antara muka. Sudah tentu, yang paling mudah dan berkuasa hari ini ialah program domestik dalam hal ini. Editor XML Rebendicipta oleh Maxim Novikov.

Kegunaan untuk pengaturcara VBA

Perisian yang sangat menarik yang:

  • akan membolehkan anda menambah tab, butang, senarai lungsur turun dan elemen lain antara muka Office baharu anda sendiri dengan mudah pada reben
  • menyokong sepenuhnya bahasa
  • membantu menyunting dengan memaparkan pembayang kontekstual
  • boleh dikuasai dengan mudah melalui pelajaran
  • benar-benar percuma

pautan muat turun Editor XML Reben

PS

Selama bertahun-tahun, Microsoft secara terang-terangan mengabaikan pembangun VBA, memandangkan ia, nampaknya, sebagai bahasa pengaturcaraan yang lebih rendah. Khabar angin secara berkala tergelincir bahawa versi Office seterusnya tidak lagi mempunyai Visual Basic atau ia akan digantikan dengan JavaScript. Versi baharu Visual Studio keluar dengan kerap dengan barangan baharu, dan editor VBE tersekat pada tahun 1997, masih tidak dapat mengendenkan kod dengan alatan standard.

Pada hakikatnya, beribu-ribu orang menjimatkan jam dan hari terima kasih kepada pengaturcara VBA yang mencipta makro untuk mengautomasikan rutin pemprosesan data pejabat sehari-hari. Sesiapa yang telah melihat bagaimana makro dalam 10 baris kod menghantar fail kepada 200 pelanggan dalam masa setengah minit, menggantikan tiga jam kerja bodoh, akan memahami saya 🙂

Dan banyak lagi. 

Semua program di atas adalah semata-mata pilihan peribadi saya dan cadangan peribadi berdasarkan pengalaman peribadi. Tiada seorang pun pengarang meminta saya untuk pengiklanan dan tidak membayarnya (dan saya tidak akan menerimanya, pada prinsipnya). Jika anda mempunyai sesuatu untuk ditambahkan pada senarai di atas - selamat datang ke komen, manusia yang bersyukur tidak akan kekal dalam hutang.

 

Sila tinggalkan balasan anda