Voit välittää argumentteja menettelylle (funktio tai ali) viittaamalla tai arvon mukaan . Oletuksena, Excel VBA välittää argumentit viittauksella. Kuten aina, käytämme yksinkertaista esimerkkiä selventääksemme asioita.
Aseta a komentopainiketta laskentataulukkoon ja lisää seuraavat koodirivit:
Ei mitäänxKuten Kokonaislukux = 10
MsgBox Triple (x)
MsgBox x
Koodi kutsuu toimintoa Triple. Se on toisen kiinnostuneen MsgBoxin tulos. Toiminnot on sijoitettava moduuliin.
1. Avaa Visual Basic Editor ja napsauta Lisää, Moduuli.
2. Lisää seuraavat koodirivit:
ToimintoKolminkertaistaa(ByRefxKuten Kokonaisluku)Kuten Kokonaisluku
x = x * 3
Kolminkertainen = x
Loppu Toiminto
Tulos, kun napsautat taulukon komentopainiketta:
3. Korvaa ByRef ByValilla.
ToimintoKolminkertaistaa(ByValxKuten Kokonaisluku)Kuten Kokonaislukux = x * 3
Kolminkertainen = x
Loppu Toiminto
Tulos, kun napsautat taulukon komentopainiketta:
muotoile solut muiden solujen perusteella
Selitys: Kun annamme argumentteja viittaamalla, viittaamme alkuperäiseen arvoon. Funktion x arvo (alkuperäinen arvo) muuttuu. Tämän seurauksena toinen MsgBox näyttää arvon 30. Kun välität argumentteja arvon mukaan, välitämme kopion funktiolle. Alkuperäinen arvo ei muutu. Tämän seurauksena toinen MsgBox näyttää arvon 10 (alkuperäinen arvo).
Siirry seuraavaan lukuun: Sovellusobjekti