Excel 2020: Подобрете вашия макро запис - Съвети за Excel

Обичах версията на Macro Recorder от 1985 г. в Lotus 1-2-3. Кодът беше труден за разбиране, но работи. Има някои настройки по подразбиране в Excel Macro Recorder, които причиняват мизерия на всеки, който се опитва да запише макроси. Ето три съвета за подобряване на макропреживяването.

Съвет 1: Включете относителната справка за всеки макрос.

Кажете, че започвате от A2 и записвате прост макрос, който се премества в A4. Бих нарекъл този макрос MoveDownTwoCells. Но ако стартирате този макрос, докато указателят на клетката е в J10, макросът ще се премести в клетка A4. Рядко това, което искате да се случи. Но можете да промените поведението на записващия макрос, като изберете Изглед, Макроси, Използване на относителни препратки, преди да запишете макроса.

Ако запишете макроса MoveDownTwoCells с включена тази настройка, макросът ще работи от всяка клетка.

Внимание

Настройката остава включена само докато затворите Excel. Утре ще трябва да го включите отново.

Бакшиш

Какво ще стане, ако всъщност трябва да запишете макрос, който винаги преминава към клетка A4? Дори с активирани относителни референции, можете да натиснете F5 за Go To и да използвате диалоговия прозорец Go To, за да отидете на A4. Макрорегистраторът ще запише код, който винаги ще премине към A4.

Съвет 2: Използвайте Ctrl + Shift + Стрелка, за да се придвижите до края на набор от данни.

Кажете, че искате да добавите сума в долната част на вчерашния регистър на фактурите. Искате общата сума да се появи в ред 9 днес, но утре може да се наложи да бъде в ред 17 или ред 5, в зависимост от това колко реда данни имате.

Намерете колона, която е надеждно 100% попълнена. От горната част на тази колона запишете действието на натискане на Ctrl + Shift + стрелка надолу. Натиснете още веднъж клавиша със стрелка надолу и ще разберете, че сте в реда, където трябва да бъдат сумите.

Съвет 3: Въведете =SUM(E$2:E8)вместо да натискате бутона AutoSum

Макрорегистраторът няма да запише намерението на AutoSum. Когато натиснете AutoSum, ще получите функция за сумиране, която започва в клетката по-горе и се простира до първата нецифрова клетка. Няма значение дали имате включени или изключени относителни референции; макрорекордерът ще твърдо кодира, че искате да сумирате седемте клетки над активната клетка.

Вместо да използвате иконата AutoSum, напишете функция SUM с един знак за долар преди първото число ред: =SUM(E$2:E8). Използвайте тази формула, докато записвате макроса, и макросът надеждно ще сумира от клетката над активната клетка чак до ред 2, както е показано по-долу.

Интересни статии...