/ / VBA פונקציות נדיפות VBA

פונקציות נדיפות VBA

כברירת מחדל, UDF (פונקציות מוגדרות משתמש) ב - Windows XP Excel VBA אינם תנודתיים. הם יחושבו מחדש רק כאשר כל אחד מהטיעונים של הפונקציה משתנה - פונקציה תנודתית יחושב מחדש בכל פעם שחישוב יתרחש בכל תאים בגליון העבודה. בואו נתבונן דוגמה קלה להסביר את זה קצת יותר.

1. פתח את Visual Basic Editor ולחץ על Insert, Module.

צור פונקציה הנקראת MYFUNCTION שמחזירה את סכום התא שנבחר והתא שמתחת לתא זה.

2. הוסף את שורות הקוד הבאות:

Function MYFUNCTION(cell As Range)

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

End Function

3. עכשיו אתה יכול להשתמש בפונקציה זו, בדיוק כמו כל פונקציית Excel אחרים.

פונקציה לא נדיפה ב- Excel VBA

4. זו פונקציה לא נדיף. פונקציות שאינן תנודתיות יחושבו מחדש רק כאשר כל אחד מהטיעונים של הפונקציה משתנה, שנה את הערך של תא B2 ל- 8.

פונקציה

5. עכשיו לשנות את הערך של התא B3 עד 11.

כל שינוי תא אחר

הסבר: הפונקציה הלא תנודתית אינה מחושבת מחדש כאשר כל תא אחר על הסדין משתנה.

6. עדכן את הפונקציה כדלקמן כדי להפוך את הפונקציה תנודתית:

Function MYFUNCTION(cell As Range)

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

End Function

7. שנה את הערך של תא B3 עד 12.

תוצאה:

פונקציה נדיפה ב - VBA של

הערה: עליך להזין שוב את הפונקציה כדי להפוך אותה לתנודה (או לרענן אותה על ידי הצבת הסמן בשורת הנוסחאות והקשת Enter).

קרא גם: