Zapoznaj się z informacjami na temat kursu VBA w Excelu. Zobacz jak korzystać z instrukcji warunkowej If. Ten temat jest omawiany podczas kursu VBA w Excelu Podstawowy. Program szkolenia znajduje się na stronie: http://www.cognity.pl/szkolenie-vba-w-excelu-podstawowy-vba,s2,72.html
3. Szanowni Państwo,
Celem instrukcji warunkowych jest zwiększenie elastyczności makra,
dzięki czemu można wykorzystać potencjał automatyzacji.
Jeżeli chcielibyście dokładniej poznać zagadnienia związane z tym
arkuszem kalkulacyjnym, zapraszamy na kurs VBA, realizowany
przez naszą firmę - na wszystkich poziomach zaawansowania.
5. Instrukcja warunkowa Excel
W przypadku Excela można wykorzystać funkcję JEŻELI do operacji, w
których postać końcowa zależy od warunków. W przypadku VBA rolę tę pełni
instrukcja warunkowa If. Poniżej przedstawiono wzór instrukcji
warunkowych:
Wzór nr 1
If warunek_logiczny Then
'wykonywane jeśli warunek logiczny jest prawdziwy
End If
6. Instrukcja warunkowa Excel
Wzór nr 2
If warunek_logiczny Then
'wykonywanie poleceń jeśli warunek_logiczny jest prawdziwy
Else
'wykonywanie poleceń jeśli warunek_logiczny jest fałszywy
End If
Kurs VBA
7. Instrukcja warunkowa Excel
Wzór nr 3
If warunek_logiczny1 Then
'wykonywanie poleceń jeśli warunek_logiczny1 jest prawdziwy
ElseIf warunek_logiczny2 Then
'wykonywanie poleceń jeśli warunek_logiczny2 jest prawdziwy
Else
'wykonywanie jeśli wcześniejsze polecenia są fałszywe
End If
Kurs VBA
8. Instrukcja warunkowa Excel
Warunki logiczne w powyższych wzorach wymagają porównywania dwóch
lub większej ilości elementów przy pomocy operatorów porównania (np.
znaku równości, większości).
Kurs VBA
9. Przykłady
Liczby parzyste
Celem przykładu jest pobranie tekstu od użytkownika i
wyświetlenie jednego z trzech komunikatów:
• jeśli użytkownik wpisał tekst, to wyświetlić informację „Podano
tekst”
• jeśli użytkownik wprowadził liczbę, to:
• w przypadku liczby parzystej wyświetlić komunikat „Liczba
parzysta”
• w przypadku liczby nieparzystej wyświetlić komunikat
„Liczba nieparzysta”
Kurs VBA
10. Przykłady
Liczby parzyste
Sub liczby_parzyste()
liczba = InputBox("Podaj liczbe")
If IsNumeric(liczba) = False Then
MsgBox "Podano tekst"
Exit Sub
End If
If liczba Mod 2 = 0 Then
MsgBox "Liczba parzysta"
Else
MsgBox "Liczba nieparzysta"
End If
End Sub
Kurs VBA
11. Przykłady
Liczby parzyste
Procedura liczby_parzyste pobiera liczbę od użytkownika przy pomocy
InputBox’a i przypisuje podaną wartość do zmiennej liczba. Pierwsza
instrukcja warunkowa If sprawdza przy pomocy IsNumeric czy użytkownika
wprowadził liczbę. Jeśli nie to zostaje wyświetlony komunikat na ekranie
"Podano tekst" i następuje zakończenie procedury poleceniem Exit.
Następnie sprawdzana jest reszta z dzielenia przez liczbę dwa. Jeśli jest
równa zero, to wyświetlany jest komunikat "Liczba parzysta", w przeciwnym
przypadku wyświetlany jest komunikat "Liczba nieparzysta".
Kurs VBA
12. Przykłady
Losowanie liczby
Celem zadania jest wylosowanie liczby z zakresu od 1 do 6 i wyświetlenie
odpowiedniego komunikatu. Jeśli zostanie wylosowana
• liczba 1 to wyświetl komunikat „Wylosowano najmniejszą liczbę”
• liczba 6 to wyświetl komunikat „Wylosowano najmniejszą liczbę”
• inna liczba to wyświetl komunikat „Wylosowano inną liczbę”
Najkrótsza w tym przypadku jest instrukcja warunkowa If … ElseIf … Else
Kurs VBA
13. Przykłady
Losowanie liczby
Sub losowanie_liczby()
liczba = WorksheetFunction.RandBetween(1, 6)
If liczba = 1 Then
MsgBox "Wylosowano najmniejszą liczbę"
ElseIf liczba = 6 Then
MsgBox "Wylosowano największą liczbę"
Else
MsgBox "Wylosowano inną liczbę"
End If
End Sub
Kurs VBA
14. Przykłady
Losowanie liczby
Pierwszym zadaniem jest pobranie liczby. W tym celu użyto pseudolosowej
funkcji dostępnej w Excelu i przekazano ją do zmiennej liczba. Funkcja
RandBetween losuje wartości z podanego przedziału liczbowego
obustronnie zamkniętego (w tym przypadku od 1 do 6). W kolejnych
krokach sprawdzany jest warunek czy liczba jest równa jeden. Jeśli tak, to
użytkownik otrzymuje komunikat w postaci „Wylosowano najmniejszą
liczbę”, natomiast w przeciwnym wypadku sprawdzany jest kolejny warunek.
Jeśli liczba jest równa sześć to użytkownik zobaczy na ekranie komunikat
„Wylosowano największą liczbę”, natomiast w innym przypadku zostanie
wyświetlony komunikat w instrukcji Else, czyli „Wylosowano inną liczbę”.
Kurs VBA
15. Przykłady
Losowanie liczby
Uwaga! Przykłady mają na celu pokazanie działanie pewnych konstrukcji
programistycznych i autor zdaje sobie sprawę z tego, że kod ww.
przykładów nie jest optymalny.
Kurs VBA
16. Powyższy temat jest jednym z elementów kursu VBA w Excelu
Przekrojowy.
Szkolenie to, podobnie jak inne specjalistyczne kursy VBA,
organizowane przez firmę Cognity, ma na celu usprawnienie i
przyspieszenie pracy w tym najbardziej popularnym arkuszu
kalkulacyjnym.