Programowanie VBA: pętla For

Dodatki do Excela
Zaawansowany
Makra
0:00czas trwania

Pętle w Excelu są bardzo wygodnym narzędziem, dzięki którym możliwe jest wykonywanie powtarzających się działań. Omawiana w dzisiejszym materiale pętla For, jest chyba najczęściej używaną w programowaniu. Zachęcamy do wykorzystywania jej w praktyce!

Opublikowane: 2 czerwca 2019
Lekcję prowadzi: Kamil Skonecki
Wykonaj zadanie samodzielnie
Dostępne po opłaceniu
Pobierz szablon do dalszej pracy
Dostępne po opłaceniu

Zobacz krok po kroku jak wykonać lekcję

Z lekcji dowiesz się:

  • Do czego służy pętla For?

  • Jak szybko porównać dwie wartości sprzedaży?

  • Jak skutecznie wykorzystać pętlę w programowaniu?

Wykonaj zadanie samodzielnie
Dostępne po opłaceniu
Pobierz szablon do dalszej pracy
Dostępne po opłaceniu

Z lekcji dowiesz się:

  • Do czego służy pętla For?

  • Jak szybko porównać dwie wartości sprzedaży?

  • Jak skutecznie wykorzystać pętlę w programowaniu?

Przykład

Naszym zadaniem jest przy wykorzystaniu pętli For i jej rozwinięciu For Each porównanie dwóch wartości sprzedaży w kontrakcie. Następnie pokolorowanie na zielono kontraktu, który jest większy.

Dim kolumna As Range– deklarujemy kolumnę w arkuszu kalkulacyjnym jako zakres

Dim komórka As Range – deklarujemy komórki w naszym arkuszu jako zakres

Dim licznik As Integer - deklarujemy zmienną – licznik - która będzie zliczała nam ilość kontraktów jako liczbę

Set kolumna = Range("A:A") – przypisujemy wartość dla zmiennej - kolumna - jako cały zakres kolumny A

licznik = 0 – ustawiamy wartość początkową

Najpierw wykorzystamy pętle For Each, dzięki której można policzyć liczbę kontraktów, które istnieją w bazie.

Schemat konstrukcji pętli For Each:

For Each wartość In grupa (dopóki nasza wartość znajduje się w naszej grupie,)

Warunek (warunek, który zostaje spełniony, dopóki wykonuje się nasza pętla)

Next

For Each komórka In kolumna (Wykonuj pętle, dopóki w kolumnie znajdują się komórki)

If komórka.Value <> Empty Then licznik = licznik + 1 (Jeżeli komórka nie jest pusta, to dodaj ja do licznika)

Next komórka

Następnie wykorzystamy pętle for, do porównania wartości sprzedaży w poszczególnych kontaktach i wskazania, która wartość jest większa.

Ogólna konstrukcja pętli For:

For licznik = start To koniec [krok pętli]
Instrukcja, która ma się wykonywać, dopóki trwa działanie pętli for
Next 

For a = 2 To licznik – pętla rozpoczyna się od wartości startowej 2, za każdym jej krokiem zwiększa się o 1 i kończy, jeżeli osiągnie wartość równą wcześniej wyliczonemu licznikowi

If Cells(a, 2).Value > Cells(a, 3).Value Then (warunek pętli, jeśli kontakt z 2017 jest większy niż z 2018)

Cells(a, 2).Interior.ColorIndex = 10 – pokoloruj komórkę z wartością sprzedaży na zielono

Else – jeśli mniejsze

Cells(a, 3).Interior.ColorIndex = 10 – pokoloruj komórkę z wartością sprzedaży na zielono

End If

Next

Pełny kod (Rysunek 1)

(Rysunek 1)

Wykonaj zadanie samodzielnie
Dostępne po opłaceniu
Pobierz gotowy arkusz z lekcji
Dostępne po opłaceniu
Kolejne kroki dostępne dla użytkowników którzy wykupili pełny dostęp

Jeszcze się wahasz?

Zobacz, co zyskasz, mając pełny dostęp:

  • Dostęp do wszystkich lekcji video
  • Materiały do ćwiczeń
  • Dodatkowe artykuły z trikami
  • Formularze gotowe od razu do użycia
  • E-booki pogłębiające Twoją wiedzę
  • Certyfikat potwierdzający Twoje umiejętności
Sprawdź co oferuje serwis Sprytny Excel »

Masz już konto w serwisie?

Zaloguj się

Adres e-mail lub login:

Hasło

Nie pamiętam hasła
- Twój pierwszy krok do lepszych wyników
Oglądaj pełne lekcje i wiedz więcej!
Masz już konto w serwisie?
Zaloguj się »

wiper-pixel