Excel VBA flyktiga funktioner - enkla Excel -makron

Innehållsförteckning

Som standard är UDF: s (användardefinierade funktioner) i Excel VBA är inte flyktiga. De räknas bara om när någon av funktionens argument ändras. A flyktig funktion kommer att räknas om när beräkning sker i alla celler i kalkylbladet. Låt oss titta på ett enkelt exempel för att förklara detta lite mer.

1. Öppna Visual Basic Editor och klicka på Infoga, modul.

Skapa en funktion som heter MYFUNCTION som returnerar summan av den markerade cellen och cellen under denna cell.

2. Lägg till följande kodrader:

Funktion MYFUNCTION (cell As Range)
MYFUNCTION = cell.Värde + cell.Offset (1, 0) .Värde
Avsluta funktion

3. Nu kan du använda den här funktionen, precis som alla andra Excel -funktioner.

4. Detta är en icke-flyktig funktion. Icke-flyktiga funktioner räknas bara om när någon av funktionens argument ändras. Ändra värdet på cell B2 till 8.

5. Ändra nu värdet på cell B3 till 11.

Förklaring: den icke-flyktiga funktionen räknas inte om när någon annan cell på arket ändras.

6. Uppdatera funktionen enligt följande för att göra funktionen flyktig:

Funktion MYFUNCTION (cell As Range)
Applikation. Flyktig
MYFUNCTION = cell.Värde + cell.Offset (1, 0) .Värde
Avsluta funktion

7. Ändra värdet på cell B3 till 12.

Resultat:

Obs! Du måste ange funktionen igen för att göra den flyktig (eller uppdatera den genom att placera markören i formelfältet och trycka på enter).

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave