300 Primerov

ByRef in ByVal

Byref Byval

Argumentom lahko posredujete postopek (funkcijo ali pod) z referenco ali po vrednosti . Privzeto, Excel VBA posreduje argumente s sklicevanjem. Kot vedno bomo z jasnim primerom razjasnili stvari.





Postavite a ukazni gumb na delovnem listu in dodajte naslednje kodne vrstice:

NobenaxAs Celo število
x = 10

MsgBox Triple (x)
MsgBox x

Koda pokliče funkcijo Triple. To je rezultat drugega MsgBox -a, ki nas zanima. Funkcije je treba postaviti v modul.





1. Odprite Urejevalnik Visual Basic in kliknite Vstavi, Modul.

2. Dodajte naslednje kodne vrstice:



FunkcijaTrojni (ByRefxAs Celo število)As Celo število

x = x * 3
Trojno = x

Konec Funkcija

Rezultat, ko kliknete ukazni gumb na listu:

Rezultat ByRef

Rezultat ByRef

3. Zamenjajte ByRef z ByVal.

FunkcijaTrojni (ByValxAs Celo število)As Celo število

x = x * 3
Trojno = x

Konec Funkcija

Rezultat, ko kliknete ukazni gumb na listu:

Rezultat ByVal

kako narediti odštevanje v

Rezultat ByVal

Pojasnilo: Pri podajanju argumentov s sklicevanjem se sklicujemo na prvotno vrednost. Vrednost x (prvotna vrednost) se v funkciji spremeni. Posledično drugi MsgBox prikaže vrednost 30. Pri podajanju argumentov po vrednosti posredujemo kopijo funkciji. Prvotna vrednost se ne spremeni. Posledično drugi MsgBox prikaže vrednost 10 (prvotna vrednost).

5/5 Dokončano! Več o funkcijah in podplatih>
Pojdi na naslednje poglavje: Objekt aplikacije



^