Excel programozás (makró) Gräff József 2015 SzámSzim
Típusok numerikus: lebegőpontos: single !, double # egész: byte, integer %, long & string: string $ logikai: boolean tömb: (alsó to felső) as típus Variant: mindenes SzámSzim
Változók Dim d as integer, i% a használat közben nem kell a rövidítő karakter! Dim a, b, c mind variant lesz! Dim t#(5), p(1 to 3, 5 to 9) as single t double típusú 0-tól vagy 1-től induló indexszel (Option Base) SzámSzim
Függvény, eljárás írás SzámSzim Function név(paraméterek) as típus vagy Function nev?(paraméterek) …. End Function Sub név(paraméterek) …. End Sub Értékkel: ByVal Címmel: ByRef (alapért.) (pointer) (Sub=void) Function Pitagorasz#(a#, b#) Pitagorasz=sqrt(a*a+b*b) End Function SzámSzim
Függvény, eljárás hívás ByRef esetén kötelező változót használni Eljárásnál, ha több paraméter van, kötelező a CALL használata: Call eljárás2(3,5) Eljárás1(fa) SzámSzim
Ciklusok 1 SzámSzim FOR: for vált=kezd to vég [lépés] … Next vált (Exit For = break) WHILE: while feltétel … Wend (amíg igaz ismétel) SzámSzim
Ciklusok 2 SzámSzim Do While vagy Until feltétel … Loop Do … While feltétel: ismétel, amíg igaz (Exit Do = break) Do … Loop While vagy Until feltétel Until feltétel: ismétel, amíg igazzá nem válik (Exit Do = break) SzámSzim
If feltétel Then teendő1 Else teendő2 Elágazások if If feltétel Then teendő1 Else teendő2 If feltétel Then teendők1 Else teendők2 End if SzámSzim
Elágazások select case Select Case numkif vagy string Case eset1 teendők1 … Case esetn teendőkn Case Else teendők egyébként End Select (NINCS BREAK!!!!) SzámSzim
Kapcsolat az Excel cellákkal A variant típusú CELLS tömb sor, oszlop sorendű indexeléssel Tanács: Record Macro!!!!!!!!!!!! SzámSzim
Köszönöm a figyelmet!