Lekcja ćwiczeniowa: VBA w MS Access

1️ Wstęp do VBA w Access

VBA to język programowania umożliwiający automatyzację działań w Accessie.
Aby otworzyć edytor VBA, naciskamy Alt + F11.
Najprostsze instrukcje to:

Sub Powitanie()
    MsgBox "Witaj w VBA!"
End Sub

** Zadanie 1:**
Stwórz formularz z pole tekstowe txtImie i przycisk cmdPowitanie. Po kliknięciu przycisku, w oknie komunikatu powinna pojawić się wiadomość w stylu:
"Witaj, Jan!" (zakładając, że w txtImie wpisano "Jan").


2️ Pętle w VBA

Pętle służą do powtarzania instrukcji.
Przykład:

Sub Liczenie()
    Dim i As Integer
    For i = 1 To 5
        Debug.Print "Liczba: " & i
    Next i
End Sub

** Zadanie 2:**
Stwórz formularz z polem txtLiczba i przyciskiem cmdOblicz.
Twój kod powinien zliczyć sumę liczb nieparzystych od 1 do wartości wpisanej w txtLiczba.
Podpowiedź: użyj pętli For...Next, ale zamiast liczyć wszystkie liczby, uwzględnij tylko liczby nieparzyste.


3️ Instrukcje warunkowe w VBA

Instrukcje warunkowe pozwalają podejmować decyzje.
Przykład:

If x > 10 Then
    MsgBox "Większe niż 10"
Else
    MsgBox "Mniejsze lub równe 10"
End If

** Zadanie 3:**
Stwórz formularz z polem txtWynik i przyciskiem cmdOcena.
Po kliknięciu przycisku kod powinien sprawdzić wartość w txtWynik i wyświetlić ocenę według skali:

  • 90+ → "Celujący"
  • 75-89 → "Dobry"
  • 50-74 → "Dostateczny"
  • poniżej 50 → "Niedostateczny"

4️ Operacje na danych w VBA

Możemy dodawać, aktualizować i usuwać dane w Accessie z poziomu VBA.
Przykład dodawania rekordu do tabeli Studenci:

Dim db As DAO.Database
Set db = CurrentDb()
db.Execute "INSERT INTO Studenci (Imie, Nazwisko) VALUES ('Jan', 'Kowalski')"

** Zadanie 4:**
Stwórz formularz z polami txtImie, txtNazwisko, txtOcena, a także przyciskiem cmdDodajStudenta.
Po kliknięciu przycisku, kod powinien:

  1. Dodać nowego studenta do tabeli Studenci.
  2. Sprawdzić, czy ocena mieści się w zakresie 1-5 – jeśli nie, powinna pojawić się wiadomość o błędzie.