Trick # 81
A makrók csodálatos módon egyszerűsítik az ismétlődő feladatok automatizálását az Excel-ben, de a létrehozásuk és felhasználásuk néha problémákat okoz. Szerencsére az Excel egy meglehetősen rugalmas alkalmazás, amely lehetővé teszi számukra, hogy megbirkózzon ezekkel a problémákkal és új lehetőségeket teremtsen minimális erőfeszítéssel.
Amikor makrót írsz Excel-be, a generált kód gyakran a képernyő villódzását okozza, nem csak lassítja a makrót, hanem rendítetlenül is. Szerencsére kiküszöbölheti a képernyő villogását, miközben felgyorsítja a makró végrehajtását.
Az Excelben rögzített makrók egyik hátránya, hogy a generált kód gyakran nagyon hatékony. Ez azt jelenti, hogy a másodpercben végrehajtandó makró gyakran túl hosszú ideig fut, és vonzónak tűnik. Ezenkívül, amikor makrót hoz létre az írási módban, minden billentyűleütés rögzítésre kerül, függetlenül attól, hogy szükséges-e vagy sem. Ez azt jelenti, hogy ha hibát követ el, majd kijavítja, akkor a gombok megnyomásakor a makró kód is meg lesz írva. Hasonló funkciók speciális szoftvereket tartalmaznak webes projektek létrehozásához. Elég, hogy vásároljon Bitrixot, és rendelje meg a testreszabási szakemberek szolgáltatásait, és megkapja az összes felsorolt funkciót. A Bitrix az Excel fájlok importálását is tartalmazza.
Ha már dolgoztak makrókkal, és érdeklődtek a VBA kóddal kapcsolatban, akkor valószínűleg hallott az Application.ScreenUpdating tulajdonságról. Hozzárendeli a False érték (hamis) az elején a makró, akkor nem csak megállítani a folyamatos villogás a képernyőn, ami miatt előfordul, hogy az a tény, hogy a makró feljegyeztük, és nincs beprogramozva a VBE, hanem végrehajtásának felgyorsítása a makró. Az ok, amiért ezt a módszert felgyorsítja a makró, abban a tényben rejlik, hogy az Excel már nem kell, hogy dolgozza át a képernyőn, amikor végző parancsokat, mint például kiválasztásához, aktiválásához, LargeScroll, SmallScroll és még sokan mások.
Annak érdekében, hogy Application.ScreenUpdating = False sor elején meglévő makró, válassza makrók → Razrabotchiks (Developer → makrók), válassza ki a makrót, kattintson a Szerkesztés gombra (Edit), és adja meg az alábbi kódot lista mutatja a 7.1.
// Listing 7.1 Application.ScreenUpdating = False // A kód Application.ScreenUpdating = True End Sub
Felhívjuk figyelmét, hogy a végén a kód újra nem engedélyezi frissítés hozzárendelésével ingatlan igazság (True) értéke Application.ScreenUpdating. Bár Excel csinálni, ha a vezérlő figyelmet kell fordítani vissza Excel (más szóval, ha a makró befejeződött), akkor jobb, ha vigyáz a biztonsági program, és ezt a kódot a végén a makró.
Néha előfordulhat, hogy a makró írás előtt az Application.ScreenUpdating tulajdonság értéke True értékre van állítva. Ez történhet olyan rögzített makrókkal, amelyek gyakran használják a Select parancsot. Ha ez megtörténik, csak meg kell ismételnie a Application.ScreenUpdating = False sort a makró kód más részeiben.