Funcții volatile Excel VBA - Macro Excel ușor

Cuprins

În mod implicit, UDF (Funcții definite de utilizator) în Excel VBA nu sunt volatile. Ele sunt recalculate numai atunci când se schimbă oricare dintre argumentele funcției. A funcție volatilă va fi recalculat ori de câte ori are loc calculul în orice celule din foaia de lucru. Să aruncăm o privire la un exemplu ușor pentru a explica acest lucru un pic mai mult.

1. Deschideți Editorul Visual Basic și faceți clic pe Inserare, modul.

Creați o funcție numită MYFUNCTION care returnează suma celulei selectate și a celulei de sub această celulă.

2. Adăugați următoarele linii de cod:

Funcția MYFUNCTION (celulă As Range)
MYFUNCTION = celulă.Valoare + celulă.Offset (1, 0). Valoare
Funcția de sfârșit

3. Acum puteți utiliza această funcție, la fel ca orice altă funcție Excel.

4. Aceasta este o funcție nevolatilă. Funcțiile non-volatile sunt recalculate numai atunci când se schimbă oricare dintre argumentele funcției. Schimbați valoarea celulei B2 la 8.

5. Acum schimbați valoarea celulei B3 la 11.

Explicație: funcția non-volatilă nu este recalculată atunci când se schimbă orice altă celulă de pe foaie.

6. Actualizați funcția după cum urmează pentru a face funcția volatilă:

Funcția MYFUNCTION (celulă As Range)
Aplicație. Volatil
MYFUNCTION = celulă.Valoare + celulă.Offset (1, 0). Valoare
Funcția de sfârșit

7. Schimbați valoarea celulei B3 la 12.

Rezultat:

Notă: trebuie să introduceți din nou funcția pentru ao face volatilă (sau reîmprospătați-o plasând cursorul în bara de formule și apăsând Enter).

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave