Excel programozás (makró) Gräff József 2014 MechatrSzim
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 MechatrSzim
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) MechatrSzim
Függvény, eljárás írás MechatrSzim 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 MechatrSzim
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) MechatrSzim
Ciklusok 1 MechatrSzim 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) MechatrSzim
Ciklusok 2 MechatrSzim 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) MechatrSzim
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 MechatrSzim
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!!!!) MechatrSzim
Kapcsolat az Excel cellákkal A variant típusú CELLS tömb sor, oszlop sorendű indexeléssel Tanács: Record Macro!!!!!!!!!!!!
Köszönöm a figyelmet!