Centar za edukaciju-BiH


Stranice (8):1,2,3,4,5,6,7,8

Anketa:Dali ste zainteresovani za ucesce u ovoj temi
Kandidat sam za ucesce u ovoj temi
 
12 92.3%
Nisam zainteresovan
 
1 7.7%
Broj glasova:13

#11 02.08.2013 15:16
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Skola Vb-a za napredne
Pozdrav genkisi i dobro nam dosao.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#12 03.08.2013 10:14
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Re: Skola Vb-a za napredne
I ja sam tu.
Miro
↑  ↓

#13 03.08.2013 21:33
dex Van mreze
Super Moderator
Registrovan od:23.02.2012
Postovi:625


Predmet:Re: Skola Vb-a za napredne
Spreman!
Pozdrav svima Smiling
↑  ↓

#14 04.08.2013 23:53
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Skola Vb-a za napredne
----------------------------------------P O C E T A K--------------------------------------------

PROCEDURE:
Kao sto smo prosli puta naveli svaka procedura se sastoji od:
-zaglavlja procedure
-tijela procedure (Koda)
-Podnozja procedure.

Tip procedure moze biti:
-Sub
-Function (Funkcija)

Svaka od ovih procedura moze biti:
-Private
-Public
-Static
Ova prva dva tipa procedure odredjuju u stvari doseg procedure.
Doseg procedure odredjuje njeno djelovanje (Dostupnost)
Private procedura ima dostupnost samo u objektu u kome je napisana.
Ako smo je napisali u okviru neke forme ona ce nam biti dostupna odnosno mozemo je pozivati samo u okviru modula od te forme ili ako je u nekom samostalnom modulu isto tako je mozemo pozivati samo u okviru toga modula.
Public procedura ima doseg na nivou nase aplikacije sto znaci da je mozemo pozivati sa bilo kojeg mjesta u aplikaciji.
Static procedure ce biti stticne odnosno vrijednosti ce se u njima zadrzati i poslije izvrsenja procedure.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
Ovaj post je ureden 1 puta. Posljednja izmjena 04.08.2013 23:54 od strane zxz. ↑  ↓

#15 05.08.2013 00:15
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Skola Vb-a za napredne
Opsti oblik procedure:
Vrsta Tip ImeProcedure(argument1, argument2, ...)
VBA naredbene linije koda
end tip

Vrsta procedure moze biti:
Private
Public
Static
Vrstu procedure mozemo i izostaviti.
Ukoliko izostavimo

tip procedure moze biti:
Sub
Function.
Vrast procedure moze biti:
Public
Private
Static

Ime procedure:
Ime proceure se mora sastojati iz jedne rijeci odnosno ne smije imati prezno mjesto u imenu procedure.
Nesmije biti ni prvi znak broj u imenu procedure.
Takodje nesmijemo koristiti nazive koji vec imaju gotove procedure(naredbe)
Ukoliko zelimo da imamo dvije rijesi onda ih mozemo spojiti donjom crtom:
Primjer:
Moja_Procedura
Preporuka:
Za nazive procedure koristite samo engleske znakove i donju crtu.
Ne preporucujem nasa slova kao niti opertaore u nativima procedura.

Argumenti procedure:
Sto se tice naziva argumenata isto vazi kao i za nazive procedura.
Argumente je pozeljno i definisati odnosno odrediti tip variable za koju ce se koristiti.
Primjer:
MojArg1 as Integer,MojArg2 as string,MojArg3 as Boolean
Ukoliko ispred argumenta dodamo Optional tada je taj argument neobavaeza pri pozivu procedure.
Primjer:
Optiona ImeArgumenta as tipArgumenta
Broj argumenata u nekoj proceduri nije ogranicen.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
Ovaj post je ureden 1 puta. Posljednja izmjena 05.08.2013 00:28 od strane zxz. ↑  ↓

#16 05.08.2013 00:24
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Sub Procedure
Sub Procedure
Sub-procedure su najčešći tip procedura koje se koriste.
Subprocedure ne vraćaju nikakvu vrijednost u imenu procedure.
Sub procedure počinju sa SUB i završavaju sa END SUB, argumenti su odvojeni zarezom.
Jedna Subprocedura može pozvati drugu Subproceduru.
U koliko nijedna od njih nisu Private tada se mogu nalaziti u različitim Modulima.
U koliko je jedna od njih postavljena kao "Private" tada se obje moraju nalaziti u istom Modulu Workbook.
U zagradama iza ImenaProcedure postavljaju se argumenti odvajani zarezom.

Sub ImeProcedure(argument1, argument2, ...)
VBA naredbene linije koda
End Sub


Pored ovoga ispred naziva procedure mozemo dodati i izraz Static.
Ukoliko dodamo izraz static vrijednosti variabli ce biti stticne odnosno vrijednosti ce se u njima zadrzati i poslije izvrsenja procedure.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
Ovaj post je ureden 1 puta. Posljednja izmjena 05.08.2013 15:57 od strane zxz. ↑  ↓

#17 05.08.2013 09:22
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Funkcije
Funkcija moze a i nemora imati ulazne argumente. Broj ulazniha ragumenata nije ogranicen.
Ulazni argumenti (Parametri) su oiviceni malom zagradom.
Svaki ulazni argument može biti dimenzionisan. a aukoliko ga ne dimenzionisemo on ce biti tipa variant.
U funkciji izlazni argument je samo ime funkcije
Mozemo dimenzionisati i izlazni argument i to nako zatvaranje male zagrade odnosno ispisa ulaznih argumenata.
Ukoliko ga ne dimenzionisemo bit ce tipa variant.
Dimenzionisanje izlaznog argumenta nije obavezno.
Primjer:
Function ImeProcedure(argument1 as Integer, argument2 as string, ...) as String
VBA naredbene linije koda
End Function

Ispred ulaznog argumenta mozemo dodati 'Optional'. Ukoliko navedemo da je argument optional onda pri pozivu te preocedure nije obavezan unos podatka za ovaj argument
Function PrimjerOptional(argument1 as Integer, Optional argument2 as string, ...) as String
VBA naredbene linije koda
End Function

Ovu proceduru mozemo pozvati ovako:
call PrimjerOptional(2)
ili ovako:
call PrimjerOptional(2,"nekistring")

Ukoliko kao ulazne parametre postavljamo druge variable onda one moraju biti istok tipa ka i sto je argument u ulaznom parametru.
Primjer:
Dim a as integer
a=2
call PrimjerOptional(a,"nekistring")

Ukolilo ova variabla nije istoga tipa onda u proceduri moramo ispred naziva ragumenta napisati 'Byval'.
Primjer:
Function PrimjerOptional(byVal argument1 as Integer, Optional argument2 as string, ...) as String
VBA naredbene linije koda
End Function

sada mozemo imati i ulaznu variablu drugoga tipa.
Dim a as single
a=2
call PrimjerOptional(a,"nekistring")
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
Ovaj post je ureden 1 puta. Posljednja izmjena 05.08.2013 15:57 od strane zxz. ↑  ↓

#18 05.08.2013 14:55
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Varijable ili Promjenjive
VARIABLE u prijevodu znači nešto varijabilno ili promjenjivo. Kao i svi programski jezici tako i VBA koristi Variable u svom kodu. Za razliku od nekih programskih jezika, u VBA ne morate explicitno deklarirati varijablu prije nego je upotrijebite iako je to poželjno.
Ukoliko želite explicitno deklarisati variable onda na vrhu modula upisite:
Option Explicit
VBA sadrži veliki broj tipova Varijabli.
Varijable se koriste za pohranu privremenih podataka koji se upotrebljavaju u izvršavanju neke procedure.
Postoje i neka pravila u radu sa Variablama:
- Naziv (Ime) Variable mora početi "slovom" a ne brojem. Broj može biti sastavni dio Variable ali ne na početku. Kao i kod procedura
- Naziv (Ime) Variable ne smije biti duže od 255 znakova
- Naziv (Ime) Variable ne smije biti istog naziva kao i nazivi naredbi odnosno gotovih procedura
- Naziv (Ime) Variable mora biti kontinuirani niz znakova bez prekida. Ako želite istaknuti neke dijelove to možete pomoću velikih početnih slova (npr: MojaVar, Moj_Popis)
Poželjno je da Varijable imenujete nekim smislenim imenom (nazivom) da bi ste mogli lako na prvi pogled uočiti o čemu se radi u dotičnom VBA kodu.(ovo je važno kod eventualno naknadnih promjena).
Na internetu ćete naći VBA kodova koji kao Variablu koriste samo "jedno slovo". Ovo nije dobra praksa i treba je izbjegavati.
Nakon izvjesnog vremena i vi sami cete zaboraviti cemu vam sluzi ta variabla a mozete misliti kako je nekome drugome ko zeli iscitati vas kod.
Broj Variabli nije ogranicen u jednoj proceduri ali se netreba rasipati jer samim time trosite memoriju i vasa app. ce sporije raditi.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#19 05.08.2013 14:58
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Skola Vb-a za napredne
E sad to bi bilo uopsteno sto bi trebali znati prije no sto pocnemo sa pisanjem samih procedura.
Jos bih vas zamolio da procitate i ovu temu:
http://www.icentar.ba/print.php?id=1149&page=1
Te u slucaju nekih nejasnoca da slobodno postavite pitanje.
Tek kada ovo teoretski razjasnimo onda idemo dalje.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#20 05.08.2013 15:34
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Skola Vb-a za napredne
Dali Sub procedure koristimo samo unutar Formi i Reporta da odrade neki zadatak ili ih se može koristiti i na neki drugi način?
Pozdrav
↑  ↓

Stranice (8):1,2,3,4,5,6,7,8


Sva vremena su GMT +02:00. Trenutno vrijeme: 12: 30 am.