Pętle w VBA

Lekcja: Pętle w Visual Basic w Access

Wprowadzenie do pętli w VBA

Pętle to konstrukcje umożliwiające wielokrotne wykonywanie zestawu instrukcji, dopóki spełniony jest określony warunek. W języku Visual Basic for Applications (VBA) w Access dostępne są różne rodzaje pętli, takie jak:

  1. Pętla Do While

    • Wykonuje blok kodu, dopóki warunek jest prawdziwy.
    • Składnia:
      Do While [warunek]
          [instrukcje]
      Loop
      
    • Pętla może się nie wykonać ani razu, jeśli warunek początkowo nie jest spełniony.
  2. Pętla Do Until

    • Wykonuje blok kodu, dopóki warunek jest fałszywy.
    • Składnia:
      Do Until [warunek]
          [instrukcje]
      Loop
      
    • Pętla może zakończyć się natychmiast, jeśli warunek początkowo jest spełniony.
  3. Pętla For...Next

    • Wykonuje blok kodu określoną liczbę razy.
    • Składnia:
      For [zmienna] = [wartość_początkowa] To [wartość_końcowa] [Step [krok]]
          [instrukcje]
      Next [zmienna]
      
    • Domyślnie krok wynosi 1, ale można go zmienić.
  4. Zagnieżdżanie pętli

    • Można umieszczać jedną pętlę wewnątrz innej, aby wykonywać bardziej złożone operacje.

Przykłady

Przykład 1: Pętla Do While

Oblicza sumę liczb od 1 do 10:

Dim suma As Integer
Dim i As Integer
suma = 0
i = 1
Do While i <= 10
    suma = suma + i
    i = i + 1
Loop
MsgBox "Suma liczb od 1 do 10 wynosi " & suma

Przykład 2: Pętla For...Next

Wyświetla liczby od 1 do 5:

Dim i As Integer
For i = 1 To 5
    MsgBox "Liczba: " & i
Next i

Przykład 3: Zagnieżdżona Pętla

Tworzy tablicę mnożenia dla liczb od 1 do 3:

Dim i As Integer
Dim j As Integer
For i = 1 To 3
    For j = 1 To 3
        Debug.Print i & " x " & j & " = " & i * j
    Next j
Next i

Ćwiczenia

Ćwiczenie 1: Pętla Do While

Utwórz formularz z polem tekstowym txtWynik i przyciskiem Oblicz. Napisz kod w VBA, który obliczy sumę liczb od 1 do wartości podanej w txtWynik i wyświetli wynik w oknie komunikatu.

Ćwiczenie 2: Pętla Do Until

Stwórz formularz z polem tekstowym txtLiczba i przyciskiem Oblicz. Napisz kod, który użyje pętli Do Until do obliczenia liczby potęg dwójki mniejszych od wartości wpisanej w txtLiczba. Wyświetl wynik w oknie komunikatu.

Ćwiczenie 3: Pętla For...Next

Utwórz formularz z polem tekstowym txtIlosc i przyciskiem Generuj. Napisz kod, który wygeneruje liczby od 1 do wartości wpisanej w txtIlosc i wyświetli je w oknie komunikatu, oddzielając przecinkami.

Ćwiczenie 4: Zagnieżdżenie Pętli

Stwórz formularz z przyciskiem TablicaMnozenia. Napisz kod, który w oknie debugowania (Debug.Print) wyświetli tablicę mnożenia dla liczb od 1 do 10 w formacie:

1 x 1 = 1
1 x 2 = 2
...
10 x 10 = 100

Wskazówki dla uczniów

  • Używaj pól tekstowych na formularzach do dynamicznego pobierania wartości.
  • Debugowanie (np. Debug.Print) pomaga obserwować wynik w Edytorze VBA.
  • Eksperymentuj z modyfikowaniem kroków (Step) w pętli For...Next.