Excel VBA: n haihtuvat toiminnot - helppoja Excel -makroja

Sisällysluettelo

Oletuksena UDF: t (käyttäjän määrittämät toiminnot) Excel VBA eivät ole haihtuvia. Ne lasketaan uudelleen vain, kun funktion argumentit muuttuvat. A haihtuva toiminto lasketaan uudelleen aina, kun laskenta tapahtuu laskentataulukon missä tahansa solussa. Katsotaanpa yksinkertaista esimerkkiä selittämään tätä hieman enemmän.

1. Avaa Visual Basic Editor ja napsauta Lisää, Moduuli.

Luo funktio nimeltä MYFUNCTION, joka palauttaa valitun solun ja tämän solun alla olevan solun summan.

2. Lisää seuraavat koodirivit:

Toiminto MYFUNCTION (solu alueena)
MYFUNCTION = solu.Arvo + solu.Siirto (1, 0). Arvo
Lopeta toiminto

3. Nyt voit käyttää tätä toimintoa aivan kuten mitä tahansa muuta Excel -toimintoa.

4. Tämä on haihtumaton toiminto. Haihtumattomat funktiot lasketaan uudelleen vain, kun funktion argumentit muuttuvat. Muuta solun B2 arvoksi 8.

5. Vaihda nyt solun B3 arvoksi 11.

Selitys: haihtumatonta funktiota ei lasketa uudelleen, kun jokin muu taulukon solu muuttuu.

6. Päivitä toiminto seuraavasti, jotta toiminto muuttuu epävakaaksi:

Toiminto MYFUNCTION (solu alueena)
Sovellus.Haihtuva
MYFUNCTION = solu.Arvo + solu.Siirto (1, 0). Arvo
Lopeta toiminto

7. Muuta solun B3 arvoksi 12.

Tulos:

Huomautus: sinun on syötettävä toiminto uudelleen, jotta se muuttuu epävakaaksi (tai päivitä se asettamalla kohdistin kaavapalkkiin ja painamalla enter).

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave