Cognity kurs VBA - instrukcja select case

Preview:

DESCRIPTION

Zapoznaj się z materiałem dotyczącym kursu VBA w Excelu. Więcej ciekawostek oraz programy szkoleń Excel znajdą Państwo na stronie: http://www.cognity.pl/szkolenie-vba-w-excelu,s,71.html

Citation preview

Instrukcja Select … Case

Szanowni Państwo,

W poniższej prezentacji odnajdą Państwo informacje na temat instrukcji w języku VBA w MS Excel.Jeżeli chcielibyście dokładniej poznać zagadnieniami związanymi z językiem VBA - zapraszamy na kurs VBA w Excelu, realizowane przez naszą firmę - na wszystkich poziomach zaawansowania.

Programy wszystkich organizowanych przez nas szkoleń znajdą Państwo na stronie Cognity.

Autorem treści prezentacji jest Pan Grzegorz Plak - trener Cognity.

Instrukcja Select … Case

Cel instrukcji oraz działanie jest identyczne jak w przypadku instrukcji

warunkowej If … ElseIf … Else.

Jednak instrukcje różnią się między sobą składnią.

Kurs VBA

Składnia Select … Case

Select Case kwota

Case warunek1

'wykonywany jeśli warunek1 jest prawdziwy

Case warunek2

'wykonywany jeśli warunek2 jest prawdziwy

Case Else

'wykonywany gdy warunki są fałszywe

End Select

Kurs VBA

Składnia Select … Case

Jeśli jakikolwiek warunek zostanie spełniony (czyli jego wartość logiczna

będzie prawdziwa) to następuje wykonanie instrukcji po tym warunku aż

do kolejnego oraz nastąpi wyjście z instrukcji Select Case.

Kurs VBA

Przykłady - Ulubiona liczba

Użytkownik podaje liczbę od 0 do 1000. Należy wypisać komunikat w

zależności od podanej liczby:

• liczba < 0, komunikat: „Liczba ujemna”

• liczba ≥ 0 oraz liczba <= 1000, komunikat: „Liczba z dozwolonego

przedziału”

• liczba > 1000, komunikat: „Liczba powyżej 1000”

Kurs VBA

Przykłady - Ulubiona liczba

Sub ulubiona_liczba() liczba = CInt(InputBox("Podaj liczbę")) Select Case liczba Case Is < 0 MsgBox "Liczba ujemna" Case Is <= 1000 MsgBox "Liczba z dozwolonego przedziału" Case Is > 1000 MsgBox "Liczba powyżej 1000" End SelectEnd Sub

Kurs VBA

Przykłady - Ulubiona liczba

Użytkownik podaje liczbę, która jest konwertowana na typ Integer

(całkowitoliczbowy). Jeśli użytkownik poda liczbę np. -5, to zostanie

wyświetlony wyłącznie komunikat „Liczba ujemna”. W przypadku, gdy

użytkownik wprowadzi np. 789, to otrzyma wyłącznie informację „Liczba z

dozwolonego przedziału”. Jeśli zostanie wprowadzona liczba np. 2340, to –

zgodnie z założeniami makra – powinna zostać wyświetlona informacja

„Liczba powyżej 1000”.

Kurs VBA

Filtrowanie w VBA

Celem filtrowania jest przefiltrowanie w odpowiedni sposób tabeli.

Przykład: Wartość podatku jest podana w komórce. Przykład z artykułu o

nazwie Instrukcja If zostanie zamieniony z wykorzystaniem instrukcji

Select Case, dzięki czemu będzie można porównać składnię obu instrukcji:

Kurs VBA

Instrukcja warunkowa If

Sub filtrowanie() podatek = Range("H1").Value If podatek = 0.09 Then filtrowanie_9 ElseIf podatek = 0.17 Then filtrowanie_17 ElseIf podatek = 0.2 Then filtrowanie_20 ElseIf podatek = 0.25 Then filtrowanie_25 Else MsgBox "Nieprawidłowy warunek filtrowania" End IfEnd Sub

Kurs VBA

Instrukcja warunkowa Select

W zaprezentowanym poniżej przykładzie mamy do czynienia ze sprawdzaniem

punktowym (czyli sprawdzamy czy podana liczba jest równa jakiejś wartości a nie

sprawdzamy czy należy do przedziału). W zaprezentowanym przykładzie nie widać

różnic między instrukcją If oraz Select.

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

Instrukcja warunkowa Select

Sub filtrowanie() podatek = Range("H1").Value Select Case podatek Case 0.09 filtrowanie_9 Case 0.17 filtrowanie_17 Case 0.2 filtrowanie_20 Case 0.25 filtrowanie_25 Case Else MsgBox "Nieprawid?owy warunek filtrowania" End SelectEnd Sub

Kurs VBA

Instrukcje warunkowe w Excelu są jednym z elementów szkoleniu VBA w

Excelu Przekrojowym.

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.