Ovaj vodič će vas naučiti kako vratiti vrijednost iz podpostupka u VBA.
Podpostupak nije osmišljen za vraćanje vrijednosti - za to se koristi funkcijski postupak. Međutim, može doći do trenutka kada pokrećete neki kôd u pod -proceduri u kojoj trebate dobiti vrijednost iz te pod -procedure. Način za to je korištenje modula ili globalnih varijabli ili upotreba podprocedure za popunjavanje Excel lista.
Korištenje varijabli za vraćanje vrijednosti
Varijable možete deklarirati na razini modula. Pri tome se te varijable mogu koristiti bilo gdje u modulu, a varijable zadržavaju svoje vrijednosti. Da biste proglasili varijablu na razini modula, jednostavno deklarirajte varijablu na vrhu vašeg kodnog modula:
123456789 | Opcija EksplicitnoDim dblQty kao DoublePod TestA ()'nazovite podmornicu TestBNazovite TestB'prikazati vrijednost varijable u prozoru modulaIspravljanje ispisa dblQtyKraj podm |
1234 | Pod TestB ()'popunite varijablu moduladblQty = 900Kraj podm |
Da bismo ih spojili, pokrenuli bismo TestA, koji bi zauzvrat pozvao TestB i dao nam vrijednost 900 u neposrednom prozoru.
To bi radilo samo unutar modula jer je varijabla deklarirana pomoću naredbe Dim na razini modula.
Globalna varijabla
Varijablu možete deklarirati na globalnoj razini kako biste je koristili kroz module projekta.
Korištenje podpostupka za popunjavanje Excel lista
Podpostupak u nastavku izravno će popuniti raspon A1 do C1 u vašem Excel listu, vraćajući tako vrijednosti ćelijama iz podpostupka.
12345 | Podpopulacijski raspon ()Raspon ("A1") = "Proizvod"Raspon ("B1") = "Količina"Raspon ("C1") = "Cijena"Kraj podm |
Zatim se možete pozvati na te vrijednosti u drugom postupku pozivanjem na vrijednosti ćelija:
1234567 | Podređeno područje dohvaćanja ()Zatamnite proizvod kao niz, koliko dugo, trošak dvostrukoProizvod = raspon ("A1")Količina = raspon ("B1")Cijena = raspon ("C1")Kraj podm |