VBA (Visual Basic for Applications)
A VBA Visual Basic egyszerűsített változata, tartalmaz egy saját, integrált fejlesztői környezetet, ez része a legtöbb Microsoft Office alkalmazásnak. A nyelvet alapvetően arra tervezték, hogy más alkalmazásokhoz kiegészítő funkcionalitást biztosítson.
A Visual Basic Editort az ALT-F11 billentyűkombinációval tudjuk megnyitni.
A program elindításakor több területre osztott ablakos felült jelenik meg
– Explorer terület: itt a megnyitott dokumentumaink elemeit.fa szerkezetben találjuk. Az ablak terület megnyitása : a CTRL-R segítségével lehetséges.
– Program kód terület: Itt szerkeszthetjük ténylegesen a kódunkat. Az ablak terület megnyitása : a F7 segítségével lehetséges.
– A program futási eredmény területén az működés látható. Az ablak terület megnyitása : a CTRL-G segítségével lehetséges.
A program nyomkövetésére és hibakeresésre is külön ablak terület van.
A VBA (Visual Basic for Applications) alapfogalmai – Excel objektumok, metódusok és tulajdonságok – adattípusok – vezérlő utasítások – program struktúrálás – egyszerű input/output
VBA jellemzői: - objektum-orientált nyelv, - minden Office alkalmazásban ugyanaz a felület.
VBA objektumai: - Excel elemek: munkafüzet, munkalap, cellatartomány, diagramm, stb., - a műveletek elvégzése előtt azonosítani kell, - az azonos objektumok együtt is kezelhetőek (Példa csoportok : Worksheet, Workbook, Application)
VBA alkalmazás használat:
- objektum.tulajdonságon keresztül
pl.: az objektum attribútumai: szín, név, méret, érték, stb. például egy cellába írt képlet kiíratása:
Sub Kepletolvaso()
Keplet = Worksheets(“Lap1").Range("C5").Formula
MsgBox Keplet
End Sub
- objektum.metódus mehívással
pl.: az objektumhoz vagy csoporthoz rendelt műveletek, tevékenységek például egy munkafüzet bezárása:
Sub Fuzetzaras()
Workbooks(“Munkafuzet.xls").Close
End Sub
- események, esemény-kezelő eljárások használatával
VBA tartományok ill. cellák tulajdonságai, jellemzői:
- Value ~ a tárolt érték (szám, szöveg, dátum, stb.)
- Formula ~ Excel képlet (szöveges)
- Characters(k,h) ~ karakterek kiválasztása (k – kezdő, h – hossz))
- Font ~ a karakter (Name, Size, ColorIndex, Bold, Italic,SubScript, SuperScript)
- Interior ~ a háttér (ColorIndex, Pattern)
- Border ~ a szegély (ColorIndex, LineStyle, Weight)
- FontName ~ betű forma (Ariel, Times New Roman, …)
- ColorIndex (a színskála sorszám, xlAuto, xlNone)
- Pattern ~ a mintázat (pl. xlSolid, xlPatternCrissCross)
- Betűformátum : Bold, Italic, SubScript, SuperScript ~ (True, False)
Változó deklarációk:
{Dim|Public|Private|Static} valt1 <típus>, valt2(20, 5 To 8) As <típus>
Public ~ globális statikus változó
Private ~ modul statikus változó
Dim ~ modul statikus/eljárás lokális változó
Static ~ eljárás statikus változó
Változótípusok: Integer - egész szám Single - lebegőpontos szám Double - duplapontosságú lebegőpontos szám Date: - dátum String - szövegváltozó Boolean - logikai (true, false) Variant - szöveg, szám vagy dátum (automatikus típus) Object - objektum Range - tartomány
VBA program strukturálás Eljárások (szubrutin) deffiniálása: Sub <eljárásnév>([<változó> As <adattípus>, ...]) [VB utasítások] End Sub Eljárások használata: [Call] <eljárásnév> [aktuális paraméterek], Kilépés: Exit Sub Függvények deffiniálása: Function <függvénynév>([<paraméter> As <adattípus>, ...]) [VB utasítások] Legalább egy értékadás: függvénynév! End Function Függvények használata: <függvénynév> ([aktuális paraméterek]) Kilépés: Exit Function Csoporthivatkozás (ugyanazon az objektumra vonatkozó utasítások): With <objektum azonosító> [VB utasítások] End With VBA feltételes utasítások (elágazások) Feltétel vizsgálati szerkezet: If feltétel1 Then VB utasítások1 (a feltétel1 igaz) [ ElseIf feltétel2 VB utasítások2 ] (csak a feltétel2 igaz) [ Else VB utasítások3 ] (minden más esetben) End If Feltételek amelyek kiértékelése vezérli az elágazást: relációk: < > = <= >= <> logikai műveletek: And, Or, Not, Xor pl. (X<=-10) And (X<>-30)
Érték szerinti elágazás: Select Case <kifejezés> [ Case <i. kifejezéslista> <i. utasítások> ] (ha megfelel a listának) [ Case Else <másként utasítások> ] (minden más esetben) End Select Kifejezéslista érték vizsgálati elemek: <kifejezés> <kif1> To <kif2> Is <reláció> <kifejezés> pl. 15, 3 To 7, Is > 100 VBA Ciklus szervezés
Amíg a feltétel igaz elöl-tseztelő hátul-tesztelő: Do While feltétel Do [VB utasítások ] [VB utasítások ] Loop Loop While feltétel Amíg a feltétel hamis elöl-tseztelő hátul-tesztelő: Do Until feltétel Do [VB utasítások ] [VB utasítások ] Loop Loop Until feltétel Kilépés: Exit Do
Léptetős ciklusváltozó (mettől, meddig, lépés): For ciklvalt =13 To 2 [Step -1] [VB utasítások ] Next [ciklvalt ] Kilépés: Exit For VBA beépített ill. felhasználói függvények Függvény definiciálás: Function fvneve(argumentum1, …) VB utasítások End Function Függvény hívás: fvneve(paraméter1, …) Beépített Excel függvények használata: változó = Application.fvneve(paraméter1, …)
Megjegyzések
Megjegyzés küldése