Tworzenie formularzy do wprowadzania danych i ich modyfikowanie

Formularze, walidacja, logika — Access i Base · INF.03

Teoria Formularze — obsługa danych w aplikacji bazodanowej

  • Formularz to narzędzie do wygodnego wprowadzania, edycji i przeglądania danych z tabel
  • W Access i Base utworzymy go przez kreator lub projektowanie ręczne
  • Formularze mogą mieć wiele widoków: pojedynczy rekord, wszystkie dane, podformularze
  • Logika: przyciski, pola wyboru, filtry, walidacje danych w zdarzeniach (np. „Przed zapisaniem”)
  • Walidacja chroni przed wpisaniem niepoprawnych danych (np. PESEL, wymagane pola, zakres wieku)

Formularze są podstawą ergonomii każdej aplikacji bazodanowej!

Ćwiczenie 1 Tworzenie podstawowego formularza w MS Access

Krok po kroku:
  1. Stwórz lub wybierz tabelę (np. uczniowie)
  2. Wejdź: „Tworzenie” → „Formularz” → „Kreator formularzy”
  3. Zaznacz wybrane pola, ustaw układ
  4. Zatwierdź, przetestuj — dodaj nowy rekord, edytuj dane
Formularz: Edycja uczniów
--------------------------------------
| Imię:     [__________]
| Nazwisko: [__________]
| Klasa:    [__________]
| [Zapisz]  [Nowy]   [Usuń]

Ćwiczenie 2 Formularz z podformularzami (np. Klasa i uczniowie)

Zadanie: Stwórz nadrzędny formularz „klasy” z podformularzem „uczniowie danej klasy”.
  1. Stwórz formularz główny na tabeli klasy
  2. Dodaj podformularz powiązany z uczniowie przez klasa_id
  3. Dane szybko filtrowane po wybranej klasie!
+--------------------+
| Klasa: 4Ti          | <---Główny formularz
+--------------------+
| Imię   | Nazwisko  | <--- Podformularz (uczniowie tej klasy)
| Adam   | Baran     |
| Ewa    | Lis       |
+--------------------+

Ćwiczenie 3 Dodawanie walidacji i logiki formularza

Przykład: Wymuś wpisanie e-mail i poprawność PESEL w nauczycielach.
  1. Kliknij pole e-mail, zakładka „Właściwości” → „Wymagane” — Tak
  2. Pole pesel — zakładka „Maska wprowadzania” → wpisz 11 cyfr
  3. Dodaj walidację w zdarzeniu VBA: np. BeforeUpdate — sprawdź długość PESEL
' VBA dla pola PESEL — formularz nauczyciele
Private Sub PESEL_BeforeUpdate(Cancel As Integer)
  If Len(Me.PESEL) <> 11 Or Not IsNumeric(Me.PESEL) Then
    MsgBox "PESEL musi zawierać dokładnie 11 cyfr"
    Cancel = True
  End If
End Sub

Ćwiczenie 4 Formularz wyszukiwania i filtrowania rekordów

Zadanie: Stwórz formularz z polem do wpisania tekstu i przyciskiem „Szukaj”, aby filtrować listę uczniów.
Formularz „Wyszukaj ucznia”:
[Imię/Nazwisko] [_____] [Szukaj]
(Przycisk ustawia filtr: Me.Filter = "nazwisko Like '*" & Me.TekstSzukany & "*'")
Me.FilterOn = True

Quiz Sprawdź wiedzę!

  1. Jak utworzyć formularz w Access?
  2. Czym różni się formularz główny od podformularza?
  3. Jak wprowadzić walidację danych w formularzu?
  4. Jak filtrować dane za pomocą formularza?
  • Przez kreator lub projekt ręczny na podstawie tabeli/zapytania
  • Główny — wyświetla jeden rekord/zbiorczo, podformularz — dane powiązane, zależne
  • W ustawieniach pola (maski, właściwości) lub przez VBA/zdarzenia
  • Użyć filtrów (Me.Filter) oraz pola wyszukującego na formularzu

Checklista Sprawdź umiejętności

  • Tworzę formularze do edycji i przeglądania danych
  • Wprowadzam walidacje i logikę formularzy
  • Łączę tabele przez podformulrze i filtry
  • Przygotowuję wygodne GUI do pracy w Access/Base
Materiały: INF.03 — Formularze, walidacja, GUI · Autor: Tomasz Puchała © 2025