A lassú vagy nehezen karbantartható VBA-kód gyakran azért alakult ki, mert a makró túl sok cellaműveletet végez, feleslegesen frissíti a képernyőt vagy ismételten ugyanazt számolja.
Lehetséges okok
Tipikus probléma a cellánkénti feldolgozás, a sok Select, a teljes munkalapok felesleges végigjárása és a nem megfelelő adatstruktúra.
Diagnosztikai gondolkodás
Mérd meg, melyik rész lassú.
Ne optimalizálj találomra: külön vizsgáld az adatbetöltést, feldolgozást és kimenetet.
Gyakorlati megoldás
Dolgozz tömbökkel nagy adathalmaznál, csökkentsd a munkalaphoz fordulások számát, kapcsold ki indokolt esetben a képernyőfrissítést és az automatikus számítást, majd állítsd vissza őket a végén.
Csak szükséges tartományokat dolgozz fel, és teszteld az eredmény változatlanságát.
Tipikus hibák és buktatók
A gyorsítás nem érhet a számítási helyesség rovására.
A túl agresszív optimalizálás nehezítheti a karbantartást.
KKV-s példa
Egy több tízezer soros riportmakró percek helyett másodpercek alatt futhatott, miután a cellánkénti feldolgozást tömbös feldolgozás váltotta fel.
Mikor kell szakember?
Nagy VBA-projektnél érdemes szakemberrel teljesítménymérést és kódátvizsgálást végezni.
Összegzés
Az XLGuru segít gyorsabb, stabilabb és karbantarthatóbb VBA-megoldásokat kialakítani.