pmiroslav | 07.08.2013 14:53 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri Ovo sam pitao zato što vidim da se u Ms Accessu unutar Modula koriste uglavnom Procedure koje se zovu Function Zanima me dali se unutar modula može koristiti Sub procedura i ako može u kojim slučajevima. Daj neki primjer. |
zxz | 07.08.2013 18:05 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri Naravno da moze. Ja licno pisem uvijek function kada dajem primjer iz razloga da nekome nebi trebala dorada odnosno da hoce vratiti neku vrijednost. Ukoliko ne vraca nikakvu vrijednost slobodno je mozes prepraviti u sub svaki i sve ce da radi. Vidis ova tema izgleda nece biti djaba. Nesto ce se i nauciti u njoj. |
pmiroslav | 07.08.2013 21:02 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri U primjeru sam napisao jednu jednostavnu proceduru koja ne vraća nikakvu vrijednost nego samo izvršava neku radnju. DoCmd.OpenReport Jednom kao Sub na formi, drugi puta kao Function u modulu i treći puta kao Sub u modulu. Svaku proceduru pokrećem klikom na dugme. Zašto je kod Sub procedure iz modula greška? |
|
Prilozi: ProcedureMP.rar (Velicina datoteke:11.19 KB) |
Getsbi | 07.08.2013 21:08 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri Tema nije beskorisna. Polako bi mogli da je zaključimo. Moraću malo da se korigujem sa tvrdnjom da "...Ovako nešto ne postoji: Function functionname () statements EndFunction..." Ipak je u programiranju moguće. Razlika između matematičke funkcije, iza koje sam ja stao na početku ove teme i programske funkcije postoji. Ova druga bi mogla da vrati vrednost, a da ne traži argument, dok matematičke traže argument. Dakle, osnovna razlika između procedura i funkcija je u tome što Function vraća vrednost kroz ime funkcije, a Sub ne vraća ništa osim što odrađuje posao. Neka Sub traži parametre, druga ne. Punjenje neke varijable, kroz Private Sub ili Public Sub nije isto što i vraćanje vrednosti. Još neke stvari su me nagnale da delom korigujem mišljenje. U matematici se sve posmatra statički dok je programiranje dinamičko. Matematika ne priznaje: f(X)=f(X+1) ili još bolje u matematici je jeres napisati: a=a+1 dok je takav iskaz u programiranju uobičajen. Jedino pri čemu ostajem, da bi obavezno trebalo pisati Sub tamo gde se ne vraća neka vrednost, a sintakasa VBA dozvoljava da napišete i Function. Ovo bi unelo malo vise reda u pisanje programskog kooda. |
pmiroslav | 08.08.2013 09:10 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri Nisam dobio ni odgovor na pitanje iz posta #13 |
zxz | 08.08.2013 12:51 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri Posto si napisao na on klik =PrintajS() a sub ne vraca nikakav rezultat i prema tome nemoze biti jednako nicemu. Otvori proceduru na on klik i iz nje pozovi i radit ce. |
pmiroslav | 08.08.2013 13:58 |
---|---|
Predmet:Re: Procedure,funkcije,sub,argumenti,parametri OK sada mi je jasno. na trećem dugmetu napisao sam Private Sub Command3_Click() PrintajS End Sub i sada radi. Znači to je primjer kako istu radnju napraviti na tri načina. Sub procedurom na formi, Funkcijom u modulu i Sub procedurom u modulu |