Съвети за писане на VBA в Excel - списък и примерни кодове

По-долу са изброени девет съвета за писане на VBA в Excel. VBA за Excel въвежда безброй възможности за персонализирани изчисления и автоматизация. Често кодът може да стигне до стотици или дори хиляди редове. С увеличаването на сложността и размера на кода става все по-важно да пишете бърз и ефективен код, лесно разбираем за колегите. Това ще ви направи безценен актив за вашия екип при поддържането и разработването на модели на Excel VBA VBA в Excel VBA е съкращение за Visual Basic за приложение. VBA е език за програмиране, разработен от Microsoft Corp., и е интегриран в.

Съвети за писане на VBA в Excel

1. Коментирайте кода си, за да подобрите четливостта

Случвало ли ви се е да отворите модела на VBA на колега и да прекарате следващия час в опити да разберете какво точно прави техният код? Имайки това предвид, представете си колко професионално бихте изглеждали, ако вашият код е кристално ясен за всеки, който го прочете, дори ако не сте били там, за да го обясните.

Писането на коментари е най-важният елемент за писане на VBA код и ще гарантира, че можете лесно да разберете собствения си код няколко месеца по-долу. Също така ще впечатлите колегите и бързо ще спечелите репутация за изготвяне на отлична документация, като по този начин ще намалите времето за обучение на бъдещите потребители.

Съвети за писане на VBA в Excel - Коментирайте

2. Именувайте променливи и функции, използвайки ясни и подходящи имена

Писането на имена на променливи и функции на VBA, които могат да бъдат ясно интерпретирани, ще спести на потребителите огромно количество време и ще им позволи да следват ясно структурата и потока на вашия код. Имената на променливи или функции като „test1“ или „first_integer“ ще създадат безброй главоболия за тези, които се опитват да прочетат вашия VBA код.

Рутината по-долу поставя нивото на инфлация в САЩ в активната клетка, ако е налице. Забележете колко по-ясен е вторият пример от първия.

Лош пример:

Именуване на променливи - лош пример

Добър пример:

Именуване на променливи - добър пример

3. Планирайте работата си, за да помогнете за създаването на опростен, ефективен VBA код

Не е необичайно да изминете половината от написането на проект на код, преди да осъзнаете, че трябва да сте го структурирали по различен начин или да създадете отделна функция за конкретни елементи на вашия код. Планирането на структурата на вашия VBA, какво искате да постигнете, какви цикли ще ви трябват и т.н. ще ви спести време в дългосрочен план. Също така ви дава време да помислите за потенциални грешки, които могат да възникнат по пътя и как планирате да се справите с тях.

Съвети за писане на VBA в Excel - Планирайте работата си

4. Използвайте макроси за бързо изработване на синтаксиса

За повечето хора макросите предлагат първия поглед в света на VBA и кодирането. Дори и за опитни програмисти, макросите са чудесен начин бързо да разберат синтаксиса на VBA, необходим за изпълнение на определена функция или метод.

Да предположим, че не сте знаели как да запазите файл с помощта на VBA. Като натиснете Record Macro, можете да изпълните стъпките ръчно и редакторът на VBA ще запише тези стъпки в код. Магия! Сега можете да използвате повторно и да адаптирате кода във вашите собствени процедури.

Съвети за писане на VBA в Excel - Използвайте макроси

5. Научете се да пишете свой собствен код; не разчитайте на макроси!

Както бе споменато по-горе, макросите са изключително полезни при изучаването на начина на писане на определени части от кода. Важно е обаче да се признае, че макросите по своята същност са ненадеждни и не са устойчиви в бъдеще, тъй като са кодирани твърдо и не могат да се адаптират към бъдещи промени в структурата на вашия работен лист.

Да предположим, че сте записали макрос, който извършва различни промени във форматирането на вашия работен лист. Част от кода, той избира колона I и след това я изтрива. Да предположим тогава, че следващият месец файлът включва допълнителна колона; сега вашият макрос ще изтрие грешната колона. Научаването как да кодирате себе си ще ви позволи да създавате цикли и да търсите правилната колона, преди да я изтриете правилно.

Напишете свой собствен код

6. Използвайте Option Explicit, за да избегнете липсващи стойности

Използването на „Option Explicit“ в началото на VBA кодов модул е ​​ценен начин да се избегнат правописни грешки във вашия код.

В левия пример по-долу опцията Explicit не е активирана. Кодът работи без грешки, но винаги връща нулевия отговор. Защо? Причината е, че променливата MonthIncme е написана неправилно и следователно не се позовава на нищо. Нищо, разделено на нещо, винаги е нула.

Когато кодът във втория пример се изпълни, Option Explicit открива, че сме дефинирали променливи в нашия код и връща грешка при компилиране. Той подчертава недекларираната променлива и ни информира за проблема. Винаги трябва да използвате Option Explicit в горната част на всеки кодов модул преди някоя от вашите рутини.

Използвайте явна опция

7. Подобрете скоростта, като ограничите избора на обекти до минимум

Ако сте нов в VBA и се чудите защо кодът ви работи много бавно, прекомерното използване на метода .Select е основен заподозрян. Изборът на обект трябва да се избягва, освен ако не е абсолютно необходимо, особено когато се работи с големи количества данни или цикли. Избирането на обекти във VBA е изключително бавно и обикновено не е необходимо. Записаните макроси често включват много. Изберете методи, така че е важно да се научите как да ги избягвате.

В първия пример по-долу се опитваме да намерим общо 1000 клетки в нашия работен лист. Всеки път, когато правим препратка към нова клетка, ние я избираме и след това вземаме нейната стойност. Изборът на листа или клетка обаче изобщо не е необходим. Можем просто да получим стойността на клетката. За записване на времето, необходимо за стартиране на всяка рутина, беше използван таймер, като вторият пример беше 50 пъти по-бърз!

Сведете изборите на обекти до минимум

Сведете изборите на обекти до минимум

8. Повторно използвайте общи функции, за да спестите време

Поддържането на най-често срещаните ви подпрограми на VBA на едно място е удобен начин да намалите времето, което отделяте за кодиране или изграждане на модел. Ето пример от нашата статия „Топ 10 на VBA подпрограми“, която взема избраните клетки, обединява ги и прилага едни и същи заглавия към всяка клетка. Можете дори да зададете клавишна комбинация на макроса, за да го направите светкавично бърз за използване.

Потърсете нашия блог за повторно използване на код (идва скоро), който ще се фокусира върху добавките и модулите за личен код.

Примерна таблица

Повторно използване на общи функции

9. Тествайте редовно кода си, за да избегнете грешки при изпълнение

Съветът по-горе вероятно се отнася за повечето работещи проекти, но е особено важен за кодирането и следователно VBA за Excel. Тестването на вашия код гарантира, че грешките и грешките се откриват и че изключенията, които могат да възникнат по време на изпълнение, могат да бъдат уловени с подходящо улавяне на грешки (вижте нашата статия за грешките в VBA тук Видове грешки в VBA за Excel Потребителите често срещат различни видове грешки във VBA. По-долу предлагаме няколко стратегии за справяне и разрешаване на тях. Ще преминем през).

Тестването трябва да започне с вас като разработчик на код. Трябва да тествате самия код и след това да го тествате в среда, която не е активна или няма въздействие.

След като сте доволни от него, трябва да позволите на колега да тества вашия модел на Excel, в идеалния случай, без да им давате никакви улики за това кои бутони трябва да натискат или какви входове трябва да въведат. Вашият модел трябва да говори сам за себе си. Тестът ще бъде добър индикатор за това какво ще се случи, когато вашият код стартира.

Тествайте кода си

Допълнителни ресурси

Благодарим ви, че прочетохте нашите съвети за писане на VBA в Excel. Finance е официален доставчик на глобалния сертифициран банков и кредитен анализатор (CBCA) ™ CBCA ™ сертифициране Сертифицираният банков и кредитен анализатор (CBCA) ™ акредитация е глобален стандарт за кредитни анализатори, който обхваща финанси, счетоводство, кредитен анализ, анализ на паричните потоци , моделиране на завети, изплащане на заеми и др. програма за сертифициране, предназначена да помогне на всеки да стане финансов анализатор от световна класа. За да продължите да напредвате в кариерата си, допълнителните финансови ресурси по-долу ще бъдат полезни:

  • Съвети за финансово моделиране Съвети за финансово моделиране
  • Как да отстранявате грешки в кода (VBA) VBA: Как да отстранявате грешки в кода Когато пишете и стартирате VBA код, е важно за потребителя да се научи как да отстранява грешки в кода. Кодът е очакването на потребителя на Excel
  • Съвети за интервюта - Как да интервюирате добре Съвети за интервюта - Как да интервюирате добре Това ръководство ще ви даде списък с 10-те най-добри съвети за интервюта, базирани на десетилетия опит от първа ръка от финансовия екип, интервюиращ стотици кандидати. Независимо дали сте в ранна, средна или късна кариера, интервютата винаги могат да бъдат нервни. За щастие, добре подготвен
  • VBA: Sub vs Function VBA: Sub vs Function В тази статия ще обсъдим ключовите разлики между sub vs function. И двете са набори от команди, които се използват за изпълнение на конкретни задачи в