Excel VBA vluchtige functies - Eenvoudige Excel-macro's

Inhoudsopgave

Standaard zijn UDF's (User Defined Functions) in Excel VBA zijn niet vluchtig. Ze worden alleen opnieuw berekend als een van de argumenten van de functie verandert. EEN vluchtige functie wordt opnieuw berekend wanneer de berekening plaatsvindt in cellen op het werkblad. Laten we een eenvoudig voorbeeld bekijken om dit wat meer uit te leggen.

1. Open de Visual Basic Editor en klik op Invoegen, Module.

Maak een functie met de naam MIJNFUNCTIE die de som van de geselecteerde cel en de cel onder deze cel retourneert.

2. Voeg de volgende coderegels toe:

Functie MIJNFUNCTIE (cel als bereik)
MIJNFUNCTIE = cel.Waarde + cel.Offset(1, 0).Waarde
Functie beëindigen

3. Nu kunt u deze functie gebruiken, net als elke andere Excel-functie.

4. Dit is een niet-vluchtige functie. Niet-vluchtige functies worden alleen herberekend als een van de argumenten van de functie verandert. Wijzig de waarde van cel B2 in 8.

5. Verander nu de waarde van cel B3 in 11.

Uitleg: de niet-vluchtige functie wordt niet herberekend wanneer een andere cel op het blad verandert.

6. Werk de functie als volgt bij om de functie vluchtig te maken:

Functie MIJNFUNCTIE (cel als bereik)
Toepassing.Vluchtig
MIJNFUNCTIE = cel.Waarde + cel.Offset(1, 0).Waarde
Functie beëindigen

7. Wijzig de waarde van cel B3 in 12.

Resultaat:

Opmerking: u moet de functie opnieuw invoeren om deze vluchtig te maken (of ververs deze door uw cursor in de formulebalk te plaatsen en op enter te drukken).

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave