Operátoři porovnávání VBA - nerovná se a další

VBA vám umožňuje porovnávat hodnoty pomocí porovnávacích operátorů. Pomocí těchto operátorů můžete porovnávat hodnoty a v důsledku toho vrátit logickou hodnotu True nebo False.

Seznam hlavních srovnávacích operátorů ve VBA

Nejprve si zobrazíme seznam porovnávacích operátorů, které lze použít v kódu VBA:

Operátor porovnání

Vysvětlení
=

Rovná

Nerovná se

>

Větší než

>=

Větší než nebo rovno

<

Méně než

<=

Méně než nebo rovno

Rovná

The Rovná operátor zkontroluje, zda jsou dvě hodnoty stejné, a vrátí hodnotu True nebo False. Zde je ukázkový kód:

123456789101112 Dim intA jako celé čísloDim intB jako celé čísloDim blnVýsledek jako booleovskýintA = 5intB = 5Pokud intA = intB ThenblnResult = TrueJinýblnResult = FalseKonec If

V tomto příkladu chceme zkontrolovat, zda intA je rovný intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Nejprve nastavíme hodnoty intA a intB do 5:

12 intA = 5intB = 5

Poté použijeme = v příkazu If zkontrolovat, zda jsou hodnoty intA a intB jsou si rovni:

12345 Pokud intA = intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Obě proměnné se rovnají 5, proto blnVýsledek vrací True:

Obrázek 1. Použití operátoru Equal To

Nerovná se

The Ne Rovná operátor zkontroluje, zda nejsou dvě hodnoty stejné, a vrátí hodnotu True nebo False. Zde je ukázkový kód:

Došlo k chybě. Prosím zkuste to znovu později.

V tomto příkladu chceme zkontrolovat, zda intA není rovno intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Používáme v příkazu If zkontrolovat, zda jsou hodnoty intA a intB jsou rozdílní:

12345 Pokud intA intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Hodnota intA je 5 a hodnota intB je 6, proměnné nejsou stejné, proto blnVýsledek vrací True:

Obrázek 2. Použití operátoru Not Equal To

Větší než

The Větší než operátor zkontroluje, zda je první hodnota větší než druhá a vrátí hodnotu True nebo False. Zde je ukázkový kód:

123456789101112 Dim intA jako celé čísloDim intB jako celé čísloDim blnVýsledek jako booleovskýintA = 6intB = 5Pokud intA> intB ThenblnResult = TrueJinýblnResult = FalseKonec If

V tomto příkladu chceme zkontrolovat, zda intA je větší než intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Kromě toho používáme > operátor v příkazu If, aby zkontroloval, zda je hodnota intA je větší než intB:

12345 Pokud intA> intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Na závěr, jakointA je větší než intB, blnVýsledek vrací True:

Obrázek 3. Použití operátoru Greater Than

Větší než nebo rovno

The Větší než nebo rovno operátor zkontroluje, zda je první hodnota větší nebo rovna druhé hodnotě, a vrátí hodnotu True nebo False. Zde je ukázkový kód:

123456789101112 Dim intA jako celé čísloDim intB jako celé čísloDim blnVýsledek jako booleovskýintA = 5intB = 5Pokud intA> = intB ThenblnResult = TrueJinýblnResult = FalseKonec If

V tomto příkladu chceme zkontrolovat, zda intA je větší nebo rovno intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Používáme>= v příkazu If zkontrolovat, zda je hodnota intA je větší nebo rovno intB:

12345 Pokud intA> = intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Na závěr, protože obě proměnné se rovnají 5, bude blnVýsledek vrací True:

Obrázek 4. Použití operátoru Greater Than nebo Equal To

Méně než

The Méně než operátor zkontroluje, zda je první hodnota menší než druhá a vrátí hodnotu True nebo False. Zde je ukázkový kód:

123456789101112 Dim intA jako celé čísloDim intB jako celé čísloDim blnVýsledek jako booleovskýintA = 5intB = 6Pokud intA <intB ThenblnResult = TrueJinýblnResult = FalseKonec If

V tomto příkladu chceme zkontrolovat, zda intA je méně než intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Používáme < v příkazu If zkontrolovat, zda je hodnota intA je méně než intB:

12345 Pokud intA <intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Tak jako intA je méně než intB, blnVýsledek vrací True:

Obrázek 5. Použití operátoru Méně než

Méně než nebo rovno

The Méně než nebo Rovná operátor zkontroluje, zda je první hodnota menší nebo rovna, a vrátí hodnotu True nebo False. Zde je ukázkový kód:

123456789101112 Dim intA jako celé čísloDim intB jako celé čísloDim blnVýsledek jako booleovskýintA = 5intB = 5Pokud intA <= intB ThenblnResult = TrueJinýblnResult = FalseKonec If

V tomto příkladu chceme zkontrolovat, zda intA je menší nebo roven intB. Pokud je to pravda, hodnota Boolean blnVýsledek bude pravdivé, v opačném případě bude nepravdivé.

Používáme <= v příkazu If zkontrolovat, zda je hodnota intA je menší nebo roven intB:

12345 Pokud intA <= intB ThenblnResult = TrueJinýblnResult = FalseKonec If

Na závěr, protože obě proměnné se rovnají 5, bude blnVýsledek vrací True:

Obrázek 6. Použití operátoru Less Than nebo Equal To

Je operátor

Is Operator testuje, zda dvě objektové proměnné obsahují stejný objekt:

12345678910111213 Sub CompareObjects ()Dim ws1 jako pracovní list, ws2 jako pracovní listSada ws1 = Listy ("List1")Nastavit ws2 = listy ("list2")Pokud ws1 Is ws2 ThenMsgBox "Stejné WS"JinýMsgBox „Různé WS“Konec IfEnd Sub

Jako operátor

Operátor Like může být použit k nalezení nepřesných shod textu. Tento příklad otestuje, zda řetězec začíná „Mr.“

1234567891011121314 Sub LikeDemo ()Dim strName As StringDim blnVýsledek jako booleovskýstrName = "Pan Michael James"Pokud strName jako „Pan*“ TakblnResult = TrueJinýblnResult = FalseKonec IfEnd Sub

Pokud se chcete dozvědět, jak porovnávat řetězce, klikněte sem: VBA Porovnání řetězců - StrComp

Pokud se chcete naučit používat porovnávací operátory, klikněte sem: Logické operátory VBA

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave