Excel VBA illékony funkciók
Alapértelmezés szerint az UDF (Felhasználó által definiált függvények) a Excel VBA nem volatilis. Csak akkor számolják újra, ha a függvény egyik érve megváltozik illékony funkció akkor számolják újra, amikor a számítás a munkalap bármelyik cellájában történik. Nézzünk egy egyszerű példát, hogy még egy kicsit magyarázzuk.
1. Nyissa meg a Visual Basic Editor alkalmazást, majd kattintson a Beszúrás, Modul lehetőségre.
Hozzon létre egy MYFUNCTION nevű függvényt, amely visszaadja a kiválasztott cellának és a cella alatti cellának az összegét.
2. Adja hozzá a következő kódsorokat:
MYFUNCTION = cell.Value + cell.Offset(1, 0).Value
End Function
3. Ezt a funkciót ugyanúgy használhatja, mint bármely más Excel funkciót.
4. Ez nem illékony funkció. A nem felejtő funkciók csak akkor számolódnak újra, ha a függvény valamelyik argumentuma megváltozik.
5. Most változtassa meg a B3 cellák értékét 11-re.
Magyarázat: a nem illékony funkciót nem újraszámoljuk, ha a lap bármely más cellája megváltozik.
6. Frissítse a funkciót az alábbiak szerint, hogy a függvény változékony legyen:
Application.Volatile
MYFUNCTION = cell.Value + cell.Offset(1, 0).Value
End Function
7. Módosítsa a B3 cellák értékét 12-re.
Eredmény:
Megjegyzés: ismét be kell lépnie a függvénybe, hogy illékony legyen (vagy frissítse a kurzort a képletsorba, és nyomja meg az Enter billentyűt).