VBA dasturchisi uchun foydalilik

Agar siz "makroslar" so'zini dahshat nafasi va ikkinchi bo'g'inga urg'u bilan talaffuz qilsangiz va "Ilovalar uchun Visual Basic" iborasi sizga sehr kabi eshitilsa, unda bu maqola siz uchun emas. Har holda, hozircha 🙂

Agar Excel-da VBA-da makroslarni dasturlash bo'yicha hech bo'lmaganda tajribangiz bo'lsa va siz to'xtashni rejalashtirmasangiz, unda quyida keltirilgan foydali qo'shimchalar va dasturlarni tanlash (hech bo'lmaganda qisman) siz uchun foydali bo'lishi kerak.

MZ-Tools - dasturchi uchun "Shveytsariya pichog'i"

Menyuda VBE muharririda o'rnatilgandan so'ng vositalari pastki menyu paydo bo'ladi MZ-Tools va bir xil funktsiyalarga tezkor kirish uchun yangi asboblar paneli:

VBA dasturchisi uchun foydalilik

U ko'p narsani qanday qilishni biladi. Menimcha, eng qimmatlilaridan:

  • Vengriya tizimiga ko'ra o'zgaruvchilarning to'g'ri nomlanishi bilan protseduralar, funktsiyalar, hodisalar va xato ishlov beruvchilarni yaratish uchun avtomatik ravishda "bo'sh baliq" ni qo'shing.
  • Foydalanuvchi shakllaridagi boshqaruv elementlarini ularning kodi bilan birga nusxalash.
  • Protseduralar uchun xatcho'plar (Sevimlilar) yarating va katta loyihada ularga tezda o'ting.
  • Kodning uzun qatorlarini bir nechtaga bo'ling va qayta yig'ing (chiziqlarni ajrating va birlashtiring).
  • Loyiha bo'yicha batafsil statistik ma'lumotlarni chiqaring (kod qatorlari soni, protseduralar, shakllardagi elementlar va boshqalar).
  • Loyihada foydalanilmagan o'zgaruvchilar va protseduralar mavjudligini tekshiring (Ko'rib chiqish manbasi)
  • Oddiy holatlar uchun o'zingizning kod shablonlari bazasini (kod shablonlari) yarating va ularni keyinroq tezda yangi makroslarga kiriting.
  • ADO orqali tashqi ma'lumotlar manbalariga ulanish uchun avtomatik ravishda uzoq va qo'rqinchli qatorni yarating.
  • Tezkor tugmachalarni plagindan istalgan funksiyaga biriktiring.

Har qanday darajadagi dasturchi uchun aniq bo'lishi kerak bo'lgan narsa. Agar sizda Office-ning eng so'nggi versiyasi bo'lsa, unda 3.00.1218-martdagi MZ-Tools 1-ning so'nggi versiyasini yuklab olishni unutmang, chunki. Excel 2013 bilan ishlashda xatolikni tuzatdi.  

Download bog'laning MZ-Tools

Smart Indenter - koddagi avtomatik chekinish

U bitta oddiy, ammo juda zarur operatsiyani yaxshi bajaradi - u VBA kodidagi yorliqlarni avtomatik ravishda ichkariga kiritadi, ichki ko'chadan, holatni tekshirish va hokazolarni aniq ta'kidlaydi.

VBA dasturchisi uchun foydalilik

Ushbu amalni bo'limdagi istalgan qulay klaviatura yorlig'iga belgilash juda qulay Indenting opsiyalari va buni bir tegish bilan bajaring.

Afsuski, dastur muallifi uni 2005 yilda tark etgan (nima uchun, Karl!?) va saytdagi so'nggi versiya Excel 97-2003 uchun. Biroq, dastur yangi versiyalar bilan juda yaxshi ishlaydi. Yagona ogohlantirish: agar sizda Excel 2013 bo'lsa, Smart Indenterni o'rnatishdan oldin, avvalo, MZ-Tools-ning so'nggi versiyasini o'rnatishingiz kerak, chunki. unda Indenter ishi uchun zarur bo'lgan dinamik kutubxona mavjud.

Download bog'laning Smart Indenter

VBE Tools - shakllardagi mikro sozlash elementlari

Murakkab shakldagi boshqaruv elementlarini (tugmalar, kiritish maydonlari, matn yorliqlari va h.k.) tekislash og'riqli bo'lishi mumkin. Menyu orqali tahrirlovchilar tarmog'iga standart ulanish Asboblar — Variantlar — Umumiy — Boshqaruv elementlarini toʻrga tekislang ba'zan u ko'p yordam bermaydi va hatto yo'lda to'sqinlik qila boshlaydi, ayniqsa, agar siz, masalan, tugmani biroz harakatlantirishingiz kerak bo'lsa. VBE Tools qo'shimchasi bu masalada yordam beradi, o'rnatishdan so'ng tanlangan element uchun shakldagi o'lcham va joylashuvni aniq sozlashingiz mumkin bo'lgan oddiy panelni ko'rsatadi:

VBA dasturchisi uchun foydalilik

Joyni almashtirish Alt+strelkalar yordamida, o‘lchamini o‘zgartirish esa Shift+Alt+strelkalar va Ctrl+Alt+strelkalar yordamida ham amalga oshirilishi mumkin.

Bundan tashqari, elementni sichqonchaning o'ng tugmasi bilan bosish orqali uni kod bilan birga darhol nomini o'zgartirishingiz mumkin.

Download bog'laning VBE vositalari

VBA farqi - koddagi farqlarni topish

Ushbu vosita, ehtimol, katta va murakkab loyihalarni yaratishda yoki hamkorlikda ishlab chiqishda professional VBA dasturchilari uchun foydaliroq bo'ladi. Uning asosiy vazifasi ikkita loyihani solishtirish va ular orasidagi koddagi farqni vizual ravishda ko'rsatishdir:

VBA dasturchisi uchun foydalilik

30 kunlik bepul muddat bor, keyin qo'shimcha sizdan buning uchun 39 funt (joriy kurs bo'yicha taxminan 3.5 ming rubl) to'lashingizni so'raydi.

Ochig'ini aytganda, bu mening hayotimda atigi 3-4 marta super-katta loyihalarda yordam berdi, lekin keyin bu menga bir necha kun va juda ko'p nerv hujayralarini saqlab qoldi 🙂 Albatta, har doim bepul alternativa bor: eksport qilish matn fayliga kod (modulni o'ng tugmasini bosing - Eksport) va ularni keyinroq Microsoft Word da buyruq yordamida solishtiring Ko'rib chiqish - Hujjatlarni solishtiring, lekin VBA Diff yordamida bu kattalik tartibi yanada qulayroq.

Download bog'laning VBA farqi

Moqups va Wireframe Sketcher - interfeys prototipini yaratish

Foydalanuvchilarning o‘zaro aloqasi uchun murakkab interfeyslarni yaratishda dialog oynalarining taxminiy ko‘rinishini oldindan loyihalash, ya’ni bajarish juda qulay. prototip yaratish. Aslida, bu tayyor shakllarni va ularning kodlarini keyinroq qayta ishlashdan ko'ra ancha oson bo'lib chiqadi. Bir marta loyihalardan birida mijoz "yorliqlar" degan ma'noni anglatuvchi "menyu" qilishni so'raganini eslayman. Yarim kunlik ish bo'sh qoldi 🙁

Ushbu vazifalar uchun turli darajadagi murakkablik va quvvatga ega bo'lgan juda ko'p pullik va bepul dasturlar mavjud. Men o'nga yaqin bunday dastur va xizmatlarni sinab ko'rdim va yaqinda men tez-tez foydalanaman Moquplar:

VBA dasturchisi uchun foydalilik

Bu onlayn muharrir:

  • Alohida dasturlarni o'rnatishni talab qilmaydi. Siz har doim mijozning ofisiga kelishingiz va yaratilgan interfeysni to'g'ridan-to'g'ri saytda ochishingiz, ko'rsatishingiz va tuzatishingiz mumkin.
  • Windows va Mac versiyalarida dialog oynalarining barcha asosiy elementlarini (yorliqlar, tugmalar, ro'yxatlar va boshqalar) o'z ichiga oladi.
  • Yaratilgan interfeysni PNG yoki PDF formatlarida eksport qilish yoki onlayn ko'rish uchun mijozga havola yuborish imkonini beradi.
  • Aslida bepul. Grafik elementlarning soni bo'yicha cheklovlar mavjud, ammo men hech qachon ulardan tashqariga chiqa olmadim. Agar sizda joy qolmasa yoki bir vaqtning o'zida bir nechta yirik loyihalarni saqlamoqchi bo'lsangiz, har doim yiliga $99 evaziga premium versiyaga yangilashingiz mumkin.

Umuman olganda, VBA-da ishlab chiquvchining vazifalari uchun - menimcha, etarli.

Agar kimdir asosan oflayn variantga muhtoj bo'lsa (masalan, dengiz qirg'og'ida Internetga ulanmasdan ishlash uchun), men tavsiya qilaman Wireframe Sketcher:

VBA dasturchisi uchun foydalilik

2 haftalik bepul demo muddatidan so'ng, u sizdan xuddi shu 99 dollarga sotib olishingizni so'raydi.

havola Moquplar

Download bog'laning Wireframe Sketcher

Invisible Basic - kodni obfuscator

Afsuski, Microsoft Excel-da makroslaringizning manba kodini parol bilan xavfsiz tarzda qulflash mumkin emas. Biroq, deb nomlangan dasturlarning butun sinfi mavjud obfuskatorlar (Ingliz tilidan. chalkashtirmoq – chalkashtirmoq, chalkashtirmoq), VBA kodining ko'rinishini shunday o'zgartiradiki, uni o'qish va tushunish juda qiyin bo'ladi, xususan:

  • o'zgaruvchilar, protseduralar va funktsiyalar nomlari uzoq ma'nosiz belgilar to'plami bilan almashtiriladi yoki aksincha, qisqa alifbodagi tushunarsiz belgilar bilan almashtiriladi.
  • Vizual jadvalning chekinishlari olib tashlanadi
  • o'chiriladi yoki aksincha, satr uzilishlari tasodifiy joylashtiriladi va hokazo.

Ochig'i, men bu usullardan foydalanish tarafdori emasman. Xususan, PLEX bilan men xaridorlarga to'liq versiyani ochiq, tushunarli va sharhlangan manba kodini berish yaxshiroq deb qaror qildim - bu menga to'g'riroq tuyuladi. Shunga qaramay, dasturchi hamkasblarimda bunday dastur juda foydali bo'ladigan holatlar ko'p bo'lgan (dasturchi ishni qildi, lekin mijoz to'lamadi va hokazo) Shuning uchun agar kerak bo'lsa, uni qayerdan olishni bilib oling. "Biz tinch odamlarmiz, ammo bizning zirhli poezdimiz ..." va boshqalar.

Download Ko'rinmas asosiy

Code Cleaner - kodni tozalash

Loyiha ustida ishlash jarayonida (ayniqsa, u katta va uzun bo'lsa) kod modullari va shakllarida "axlat" to'plana boshlaydi - kutilmagan va istalmagan nosozliklarga olib kelishi mumkin bo'lgan VBE muharriri xizmati ma'lumotlarining parchalari. Qulaylik Kod tozalovchi bu loyni oddiy, ammo ishonchli tarzda tozalaydi: kodni modullardan matnli fayllarga eksport qiladi va keyin uni toza tarzda import qiladi. Katta loyihalar ustida ishlashda vaqti-vaqti bilan bunday "tozalash" ni amalga oshirishni tavsiya qilaman.

Download bog'laning Kod tozalovchi

Ribbon XML muharriri

Agar siz makroslaringizni ishga tushirish uchun Excel lentasidagi chiroyli tugmalar bilan o'z yorlig'ingizni yaratmoqchi bo'lsangiz, unda XML fayl muharriri interfeysisiz ishlay olmaysiz. Shubhasiz, bugungi kunda eng qulay va kuchli bu boradagi mahalliy dasturdir. Ribbon XML muharririMaksim Novikov tomonidan yaratilgan.

VBA dasturchisi uchun foydalilik

Mutlaqo ajoyib dasturiy ta'minot:

  • o'z yorliqlarini, tugmalarini, ochiladigan ro'yxatlarini va yangi Office interfeysining boshqa elementlarini lentaga osongina qo'shish imkonini beradi.
  • tilni to'liq qo'llab-quvvatlaydi
  • kontekstli maslahatlarni ko'rsatish orqali tahrirlashda yordam beradi
  • darslar orqali oson o'zlashtirilishi mumkin
  • butunlay bepul

Download bog'laning Ribbon XML muharriri

PS

Ko'p yillar davomida Microsoft VBA ishlab chiquvchilarini ochiqchasiga e'tiborsiz qoldirdi, chunki uni pastroq dasturlash tili deb hisobladi. Vaqti-vaqti bilan Office-ning keyingi versiyasida Visual Basic bo'lmaydi yoki u JavaScript bilan almashtiriladi, degan mish-mishlar vaqti-vaqti bilan tarqaladi. Visual Studio ning yangi versiyalari muntazam ravishda yangi sovg'alar bilan chiqadi va VBE muharriri 1997 yilda tiqilib qolgan, ammo standart vositalar bilan kodni hali ham kirita olmadi.

Aslida, VBA dasturchilari ofis ma'lumotlarini qayta ishlashning kundalik tartiblarini avtomatlashtirish uchun makroslarni yaratish tufayli minglab odamlar soatlar va kunlarni tejashmoqda. 10 qator koddagi makros uch soatlik ahmoqona ish o'rnini bosgan holda yarim daqiqada 200 ta mijozga fayllarni qanday yuborishini ko'rgan har bir kishi meni tushunadi 🙂

Va yana. 

Yuqoridagi barcha dasturlar mening shaxsiy tanlovim va shaxsiy tajribaga asoslangan shaxsiy tavsiyamdir. Mualliflarning hech biri mendan reklama so'ramadi va buning uchun pul to'lamadi (va men buni printsipial jihatdan qabul qilmayman). Yuqoridagi ro'yxatga qo'shadigan narsangiz bo'lsa - sharhlarga xush kelibsiz, minnatdor insoniyat qarzda qolmaydi.

 

Leave a Reply