29
Poradnik VBA: Instrukcje i Operatory VBA w Excelu CZ.II

Kurs VBA - Instrukcje i operatory VBA w Excelu cz.II

Embed Size (px)

Citation preview

Poradnik VBA: Instrukcje i Operatory VBA w Excelu

CZ.II

Poradnik 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

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.

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)

Poradnik VBA: Priorytety operatorów

Kurs VBA

1 Arytmetyczne 2 Porównania 3 Logiczne

1 ^ = 1 Not

2 -(Jednoargumentowy)

<> 2 And

3 *, / < 3 Or

4 \ > 4 Xor

5 Mod <= 5 Eqv

6 +, - >= 6 Imp

Konkatencji

& Like, Is

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.

Poradnik VBA: Instrukcje warunkowe

Konstrukcja

On …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)

Poradnik VBA: Instrukcje warunkowe

Konstrukcja

On …GoSub

Kurs VBA

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

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

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)

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.

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:…

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Konstrukcja

If…Then…Else…

Lub

If…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:

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…

Lub

If…Then…[ElseIf…Then…]

[Else…] End If

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

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

If…Then…Else…

Lub

If…Then…[ElseIf…Then…]

[Else…] End If

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…

Lub

If…Then…[ElseIf…Then…]

[Else…] End If

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else…

Lub

If…Then…

[ElseIf…Then…]

[Else…] End If

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

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else…

Lub

If…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

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else…

Lub

If…Then…

[ElseIf…Then…]

[Else…] End If

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

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

If…Then…Else…

Lub

If…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

Poradnik VBA: Instrukcje warunkowe

Kurs VBA

Konstrukcja

Select 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:

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).

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)

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.

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

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