Десет здравословни предложения, за да направите кодирането на Excel VBA по-бързо и лесно. Тези съвети са базирани на Excel 2010 (но те работят в почти всички версии) и много от тях бяха вдъхновени от книгата на О'Райли „Excel 2010 - The Maning Manual“ от Матю Макдоналд.
1 - Винаги тествайте вашите макроси в електронна таблица за изхвърляне, обикновено копие на такъв, с който е създаден. Отмяната не работи с макроси, така че ако кодирате макрос, който сгъва, вретена и мутира електронната ви таблица, нямате късмет, освен ако не сте последвали този съвет.
2 - Използването на клавиши за бърз достъп може да бъде опасно, тъй като Excel не ви предупреждава, ако изберете клавиш за бърз достъп, който Excel вече използва. Ако това се случи, Excel използва клавиша за бърз достъп за макроса, а не вградения клавиш за бърз достъп. Помислете колко изненадан ще бъде шефът ви, когато той зареди вашия макрос и след това Ctrl-C добави произволен случай номер до половината клетки в електронната му таблица.
Матю Макдоналд прави това предложение в „Excel 2010 - Ръководството за липсващите“.
Ето някои общи комбинации от клавиши, които никога не бива да присвоявате на макрократки, защото хората ги използват твърде често:
- Ctrl + S (Запазване)
- Ctrl + P (Печат)
- Ctrl + O (отворен)
- Ctrl + N (ново)
- Ctrl + X (изход)
- Ctrl + Z (Отмяна)
- Ctrl + Y (повторно / повторение)
- Ctrl + C (Копиране)
- Ctrl + X (Изрязване)
- Ctrl + V (Поставяне)
За да избегнете проблеми, винаги използвайте комбинации от клавиши Ctrl + Shift + букви, тъй като тези комбинации са много по-рядко срещани от клавишите за бърз достъп Ctrl +. И ако се съмнявате, не присвоявайте клавиш за бърз достъп, когато създавате нов, непроверен макрос.
3 - Не мога да си спомня Alt-F8 (макрос за подразбиране по подразбиране)? Значенията не означават ли нищо за теб? Тъй като Excel ще направи макроси във всяка отворена работна книга достъпна за всяка друга работна книга, която е понастоящем отворен, лесният начин е да изградите своя собствена библиотека с макроси с всичките си макроси в отделен работна книга. Отворете работната книга заедно с другите си електронни таблици. Както казва Матю, „Представете си, че редактирате работна книга на име SalesReport.xlsx и отваряте друга работна книга с име MyMacroCollection.xlsm, която съдържа няколко полезни макроса. Можете да използвате макросите, съдържащи се в MyMacroCollection.xlsm с SalesReport.xlsx, без да се задействате. " Матю казва, че този дизайн улеснява споделянето и повторната употреба на макроси в работните книги (и между различните хора).
4 - И помислете за добавяне на бутони за връзка към макросите в работния лист, който съдържа вашата макро библиотека. Можете да подредите бутоните във всякакви функционални групи, които имат смисъл за вас, и да добавите текст към работния лист, за да обясните какво правят. Никога няма да се замислите какво криптично наречен макрос всъщност прави отново.
5 - Новата архитектура за сигурност на макроса на Microsoft е подобрена много, но е още по-удобно да кажете на Excel да се доверява на файловете в определени папки на вашия компютър (или на други компютри). Изберете конкретна папка на вашия твърд диск като надеждно място. Ако отворите работна книга, съхранявана на това място, автоматично се вярва.
6 - Когато кодирате макрос, не се опитвайте да изграждате избор на клетки в макроса. Вместо това приемете, че клетките, които ще използва макросът, са предварително избрани. Лесно е да влачите мишката върху клетките, за да ги изберете. Кодирането на макрос, който е достатъчно гъвкав, за да направи същото, вероятно е пълен с грешки и трудно се програмира. Ако искате да програмирате каквото и да било, опитайте се да разберете как да напишете валидиращ код, за да проверите дали вместо това е направен подходящ избор в макроса.
7 - Може да си мислите, че Excel изпълнява макрос срещу работната книга, която съдържа макрокода, но това не винаги е вярно. Excel управлява макроса в активна работна книга. Това е работната книга, която прегледахте най-скоро. Както обяснява Матю, „Ако имате отворени две работни книги и използвате лентата на задачите на Windows, за да преминете към втората работна книга и след това обратно към редактора на Visual Basic, Excel изпълнява макроса на втория работна книга. "
8 - Матю предлага: „За по-лесно кодиране на макро, опитайте да подредите прозорците си, така че да можете да видите прозореца на Excel и Visual Основен прозорец на редактора в същото време, отстрани. "Но Excel няма да го направи (Подреждане на всички в менюто View само подрежда Работни книги. Visual Basic се счита за различен прозорец на приложението от Excel.) Но Windows ще. Във Vista затворете всички, освен двете, които искате да подредите, и щракнете с десния бутон върху лентата на задачите; изберете "Покажи Windows отстрани". В Windows 7 използвайте функцията "Snap". (Търсете онлайн за "Snap функции на Windows 7" за инструкции.)
9 - Най-горният съвет на Матю: "Много програмисти намират дългите разходки по плажа или бъркат кана с планинска роса за полезен начин да изчистят главите си."
И разбира се, майката на всички съвети от VBA:
10 - Първото нещо, което трябва да опитате, когато не можете да мислите за необходимите изявления или ключови думи в програмния си код, е да включите макро рекордер и направете куп операции, които изглеждат подобни. След това проучете генерирания код. Не винаги ще ви насочи към правилното нещо, но често го прави. Като минимум това ще ви даде място да започнете да търсите.
източник
Макдоналд, Матю. „Excel 2010: Ръководството за липсващите.“ 1 издание, O'Reilly Media, 4 юли 2010 г.