/ / Excel VBA nestabilne funkcije

Excel VBA nestabilne funkcije

Prema zadanim postavkama, UDF (funkcije definirane korisnikom) u sustavu Windows Excel VBA nisu hlapljive. Oni se samo preračunavaju kada se neki argument funkcije mijenja hlapljiva funkcija bit će preračunata svaki put kad se izračun obavlja u bilo kojoj ćeliji na radnom listu. Pogledajmo jednostavan primjer kako bismo ovo malo objasnili.

1. Otvorite Visual Basic Editor i kliknite Insert, Module.

Napravite funkciju pod nazivom MYFUNCTION koja vraća zbroj odabrane ćelije i ćelije ispod ove ćelije.

2. Dodajte sljedeće retke koda:

Function MYFUNCTION(cell As Range)

MYFUNCTION = cell.Value + cell.Offset(1, 0).Value

End Function

3. Sada možete koristiti ovu funkciju, baš kao i svaka druga Excel funkcija.

Nestabilna funkcija u programu Excel VBA

4. Ovo je neizbrta funkcija. Nestabilne funkcije se preračunavaju samo kad se neki argument funkcije promijeni. Promijenite vrijednost ćelije B2 do 8.

Funkcija

5. Sada promijenite vrijednost ćelije B3 na 11.

Sve ostale promjene stanica

Objašnjenje: neosjetljiva funkcija nije rekalkulirana kada se bilo koja druga ćelija na ploči mijenja.

6. Ažurirajte funkciju kako slijedi kako bi funkcija hlapljiva:

Function MYFUNCTION(cell As Range)

Application.Volatile
MYFUNCTION = cell.Value + cell.Offset(1, 0).Value

End Function

7. Promijenite vrijednost ćelije B3 na 12.

Proizlaziti:

Nestabilna funkcija u programu Excel VBA

Napomena: Morate ponovno unijeti funkciju kako biste ga promijenili (ili ga osvježite stavljanjem pokazivača u traku formule i pritiskom na tipku Enter).

Također pročitajte: