Excel makrózás

Jelen oldal tartalma csak jegyzetként szolgál, így e-képpen kell kezelni azt!

Tartalom


Makrószerkesztő megnyitása

Billentyűparancs: Alt + F11
Menü: Nézet – Makrók


Immediate ablak megjelenítése

Billentyűparancs: Ctrl + G
Menü: View – Immediate Window


Makró lefuttatása

Billentyűparancs: F5
Menü: Zöld háromszög (Run) ikon


Kommentelés

A kikommentelni kívánt sor elé (és végére) egy ' (aposztrófot) kell írni.

'Ez egy példa komment.'

Változó definiálása

Dim [Változó neve] As [Definíció]

Dim szam As Integer
Dim szoveg As String
Dim hosszu As Long

Értékadás változónak

[Változó neve] = [Változó értéke]

valtozo = 21
valtozo = valtozo + 3
ketszeres = valtozo * 2
szoveg = "Ez egy szöveg."

Érték kiíratása az Immediate ablakba

Debug.Print [Változó neve]

Debug.Print ketszeres
Debug.Print vezeteknev & " " & keresztnev
Debug.Print "Végeredmény: "; eredmeny

Logikai elágazás (If)

Or – Ha két feltételből legalább az egyik igaz, akkor a teljes logikai vizsgálat igaz lesz.
And – Ha mindkét feltétel igaz, csak akkor lesz a teljes logikai vizsgálat igaz.
If [Logikai vizsgálat] Then
[Végrehajtás]
ElseIf [Logikai vizsgálat] Then
[Végrehajtás]
Else [Logikai vizsgálat] Then
[Végrehajtás]
End If

Sub Teszt()

'Változók definiálása'
Dim eletkor As Integer
Dim korcsoport As String
Dim felirat As String

'Változók értékének megadása'
elertszazalek = 73
felirat = "Érdemjegy: "

'Logikai elágazás'
If elertszazalek < 20 Then
 erdemjegy = "Egyes"
ElseIf elertszazalek >= 20 And elertszazalek < 40 Then
 erdemjegy = "Kettes"
ElseIf elertszazalek >= 40 And elertszazalek < 60 Then
 erdemjegy = "Hármas"
ElseIf elertszazalek >= 60 And elertszazalek < 80 Then
 erdemjegy = "Négyes"
Else
 erdemjegy = "Ötös"
End If

'Kiíratás'
Debug.Print felirat; erdemjegy

End Sub

For ciklus

For i = [Ettől] To [Eddig]
[Ciklusmag]
Next i
A ciklusmagot újra és újra végrehajtja, amíg a számláló értéke 10 nem lesz.

Sub Ciklus()

Dim i As Integer
Dim szam As Integer

szam = 0

For i = 1 To 10

 szam = szam + 1
 Debug.Print szam

Next i

End Sub

While ciklus

While [Logikai feltétel]
[Ciklusmag]
Wend
Végrehajtja a ciklusmagot amíg a szam változó értéke 10-nél kisebb (vagyis a logikai feltétel igaz).

Sub Ciklus()

szam = 0

While szam < 10

 szam = szam + 1
 Debug.Print szam

Wend

End Sub