Excel VBA flygtige funktioner - nemme Excel -makroer

Indholdsfortegnelse

Som standard er UDF's (brugerdefinerede funktioner) i Excel VBA er ikke flygtige. De genberegnes kun, når nogen af ​​funktionens argumenter ændres. EN flygtig funktion genberegnes, når der udføres beregning i alle celler i regnearket. Lad os se på et let eksempel for at forklare dette lidt mere.

1. Åbn Visual Basic Editor, og klik på Indsæt, modul.

Opret en funktion kaldet MYFUNCTION, som returnerer summen af ​​den valgte celle og cellen under denne celle.

2. Tilføj følgende kodelinjer:

Funktion MYFUNCTION (celle som område)
MYFUNCTION = cell.Value + cell.Offset (1, 0) .Værdi
Afslut funktion

3. Nu kan du bruge denne funktion, ligesom enhver anden Excel -funktion.

4. Dette er en ikke-flygtig funktion. Ikke-flygtige funktioner genberegnes kun, når nogen af ​​funktionens argumenter ændres. Ændre værdien af ​​celle B2 til 8.

5. Skift nu værdien af ​​celle B3 til 11.

Forklaring: Den ikke-flygtige funktion genberegnes ikke, når en anden celle på arket ændres.

6. Opdater funktionen som følger for at gøre funktionen flygtig:

Funktion MYFUNCTION (celle som område)
Anvendelse. Flygtig
MYFUNCTION = cell.Value + cell.Offset (1, 0) .Værdi
Afslut funktion

7. Skift værdien af ​​celle B3 til 12.

Resultat:

Bemærk: du skal indtaste funktionen igen for at gøre den flygtig (eller opdatere den ved at placere markøren i formellinjen og trykke på enter).

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave