Transcript
Page 1: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje i Operatory VBA w Excelu

CZ.II

Page 2: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje i operatory VBA w Excelu CZ.II

Page 3: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Szanowni Państwo,

Cognity Szkolenia zaprasza do zapoznania się z prezentacją Instrukcje i Operatory VBA część II.

Prezentacja została przygotowane w ramach cyklu prezentacji Poradnik VBA.

Zainteresowanych kursami VBA zapraszamy na stronę www.cognity.pl

Page 4: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Priorytety operatorów

Priorytety Operatorów

Kurs VBA

Kiedy wyrażenia zawierają operatory więcej niż z jednej kategorii, wówczas operatory arytmetyczne wyznaczają wartość jako pierwsze, następnie operatory porównania, a na końcu operatory logiczne.

Page 5: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Priorytety operatorów

Kurs VBA

Priorytety Operatorów

Wszystkie operatory porównania maja, taki sam priorytet, tzn. wartość jest wyznaczana w kolejności występowania operatorów w wyrażeniu (od lewej do prawej)

Page 6: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Priorytety operatorów

Kurs VBA

1 Arytmetyczne 2 Porównania 3 Logiczne 1 ^ = 1 Not2 -

(Jednoargumentowy)

<> 2 And

3 *, / < 3 Or4 \ > 4 Xor5 Mod <= 5 Eqv6 +, - >= 6 Imp

Konkatencji & Like, Is

Page 7: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje bezwarunkowe

Kurs VBA

Instrukcja Składnia, przykład Opis

GoTo Składnia:Go To linia Przykład:Go To linia1…Linia1:

Przekazanie wykonania dalszych instrukcji jako bezwarunkowy skok do określonego miejsca w obrębie procedury wyznaczonego przez argument Linia, tj. etykiety lub numeru wiersza.

GoSub…Return

Składnia:Gosub linia…Linia…Return

Przekazanie wykonania dalszych instrukcji jako bezwarunkowy skok do pod procedury w obrębie procedury określonej przez argument Linia tj. etykiety lub numeru wiersza, a następnie powrót po instrukcji Return.

Page 8: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

KonstrukcjaOn …GoSub

Kurs VBA

Przekazuje sterowanie do jednego z kilku określonych miejsc w procedurze zależnie od wartości wyrażenia(po instrukcji Return powrót z wykonania)

Page 9: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

KonstrukcjaOn …GoSub

Kurs VBA

Wartość wyrażenia (liczba całkowita 255 określa, do którego wiersza z listy zostanie przekazane sterowanie.

Page 10: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

On …GoSub Składnia:

Przykład:

Kurs VBA

On wyrażenie GoSub docelowe_wierszeWiersz=2On wiersz GoSub Linia1, Linia2, ’skok do etykiety Linia2…Linia2:Return

Page 11: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Konstrukcja On …GoTo Przekazuje

sterowanie do jednego z kilku określonych miejsc w procedurze zależnie od wartości wyrażenia (bez powrotu po wykonaniu przekazania sterowania)

Page 12: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

On …GoTo Wartość wyrażenia (liczba całkowita od 0 do 255) określa, do którego wiersza z listy zostanie przekazane sterowanie.

Page 13: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

On …GoTo Składnia:

Przykład:

On wyrażenie GoTo docelowe_wiersze

wiersz=1On wiersz GoTo Linia1, Linia2 ’skok do etykiety Linia1…Linia1:…

Page 14: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

KonstrukcjaIf…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Warunkowo wykonuje grupę instrukcji zależnie od wartości wyrażenia. Każdy warunek reprezentowany jest przez wyrażenie warunkowe, które może przyjmować dwie wartości:

Page 15: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Prawda(True) lub fałsz (False). Zależnie od wartości wykonywany jest określony blok instrukcji. Klauzule Else i ElseIf są opcjonalne.

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Page 16: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

W wyrażeniu warunkowym można stosować operatory porównania i operatory logiczne.

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Page 17: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

W przypadku zastosowania składni pojedynczej linii, możliwe jest umieszczenie wielu instrukcji do wykonania If…Then pod warunkiem, że wszystkie instrukcje będą umieszczone w tej samej linii oraz musza być oddzielone znakiem:

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Page 18: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Składnia:If warunek Then [instrukcje] ’wykonywane, jeśli warunek jest spełniony, kolejna instrukcja to End If

Page 19: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Składnia:[ElseIf warunek-n] Then [instrukcje] …’wykonywane, jeśli warunek-n jest spełniony, kolejna instrukcja to End If

Page 20: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Składnia:[Else [instrukcje]] ’wykonywane, jeśli żaden warunek nie jest spełniony End If

Page 21: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else… LubIf…Then…[ElseIf…Then…][Else…] End If

Przykład:Liczba=20If liczba > 100 Then Miejsce=1ElseIf liczba <=80 And liczba >50 Then Miejsce=2ElseIf liczba <=50 And liczba>20 ThenMiejsce=3Else Miejsce=4 End If ’wartość miejsce=4

Page 22: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

KonstrukcjaSelect Case Wykonanie jednego

z kilku bloków instrukcji zależnie od wartości podanego wyrażenia. Część Lista_wyrażeń-n to ograniczona lista jednej lub kilka następujących form:

Page 23: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Select Case c.d. Wyrażenie (Case

1,4, 6), wyrażenie To wyrażenie (do określenia zakresu wartości, Case 10 To 100), Is wyrażenie porównawcze (stosowane z operatorami: >, <, >=, ,<=, <>, =, Case Is <15).

Page 24: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Select Case c.d. Można stosować

różne formy wyrażeń lub zakresów w każdym warunku Case (Case 1 To 4, 7 To 10, 14, 17, Is <maxliczba)

Page 25: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Select Case c.d. Struktury Select

Case mogą być zagnieżdżone. Każda zagnieżdżona konstrukcja Select Case musi być zakończona instrukcją End Select.

Page 26: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Składnia:

Kurs VBA

Select Case c.d. Select Case

wyrażenie_testowe [Case lista_wyrażeń-n [instrukcja-n]]…[Case Else [instrukcja-domyślne]]…End Select

Page 27: Kurs VBA - instrukcje i operatory VBA w Excelu cz II

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Select Case c.d.Przykład:

Wynik=91Select Case wynikCase 10, 20[instrukcje1]Case 30 To 100[instrukcje2]Case Is >90[instrukcje3]Case Else [instrukcje-domyślne]End select ’wykonany zostanie blok instrukcje2