Operátor VBA MOD - Jak používat Excel VBA Modulo? (Příklady)

Operátor Excel VBA MOD

Ve VBA MOD je to stejné jako s aplikací v matematice, když je číslo rozděleno jeho dělitelem a dostaneme připomínku od tohoto dělení, tato funkce se používá k tomu, aby nám dal zbytek z dělení, není to funkce ve VBA než je to operátor.

MOD není nic jiného než MODULO je matematická operace. Je to úplně stejné jako u dělení, ale výsledek se mírně liší, když dělení bere dělenou částku, ale MOD přebírá zbytek dělení. Například: Pokud vydělíte dělení 21 na 2, výsledkem je 10,50 podle MOD, což je zbytek dělení, tj. 1. (Číslo 2 může dělit pouze 20, ne 21, takže zbytek je 1).

V normálním excelu je to funkce, ale ve VBA to není funkce. Je to jen matematický operátor. V tomto článku se podrobně podíváme na tohoto operátora.

Syntax

Jen pro připomenutí, nejde o funkci, která má syntaxi. Pro pochopení našeho čtenáře mi dovolte, abych to uvedl do slova.

Číslo 1 MOD Číslo 2 (dělitel)

Číslo 1 není nic jiného než číslo, které se snažíme rozdělit.

Číslo 2 toto je dělitel, tj. Vydělíme číslo 1 tímto dělitelem.

MOD výsledek daný číslem 1 / číslem 2.

Jak používat MOD ve VBA?

Příklad č. 1

Při psaní kódu postupujte podle následujících kroků.

Krok 1: Vytvořte název makra.

Kód:

Sub MOD_Example1 () End Sub

Krok 2: Definujte jednu z proměnných jako „ Celé číslo “.

Kód:

Sub MOD_Example1 () Dim i jako Integer End Sub

Krok 3: Nyní proveďte výpočet jako „i = 20 MOD 2.“

Jak jsem řekl na začátku, MOD je operátor, nikoli funkce. Použil jsem tedy slovo MOD, jako když zadám plus (+).

Kód:

Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 End Sub

Krok 4: Nyní přiřaďte do pole se zprávou hodnotu „I“.

Kód:

Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 MsgBox i End Sub

Krok 5: Spustit okno se zprávou s kódem zobrazí hodnotu „I.“

Příklad č. 2

Mod ve VBA vždy vrátí celočíselnou hodnotu, tj. Bez desetinných míst, pokud zadáte číslo v desetinných číslech. Podívejte se například na níže uvedený kód.

Kód:

Sub MOD_Example2 () Dim i As Integer i = 26,25 Mod 3 MsgBox i End Sub

Dělitel 3 může dělit 24, takže zbytek je zde 2,25, ale operátor MOD vrátí celočíselnou hodnotu, tj. 2, ne 2,25.

Nyní upravím číslo na 26,51 a uvidím rozdíl.

Kód:

Sub MOD_Example2 () Dim i As Integer i = 26,51 Mod 3 MsgBox i End Sub

Spustím tento kód a uvidím, jaký je výsledek.

Páni!!! Jako odpověď máme nulu. Důvod, proč jsme dostali nulu, protože VBA zaokrouhluje čísla jako naši bankéři, tj. Jakákoli desetinná čárka, která je větší než 0,5, se zaokrouhlí nahoru na další celočíselnou hodnotu. V tomto případě je tedy 26,51 zaokrouhleno na 27.

Protože 3 může dělit 27 na 9, nezískáme žádné zbývající hodnoty, takže hodnota i se rovná nule.

Nyní zadám hodnotu dělitele také v desetinných bodech.

Kód:

Sub MOD_Example2 () Dim i As Integer i = 26,51 Mod 3,51 MsgBox i End Sub

Krok 6: Spusťte tento kód a podívejte se, jaký je výsledek.

Jako odpověď jsme dostali 3, protože 26,51 bude zaokrouhleno na 27 a hodnota dělitele 3,51 bude zaokrouhleno na 4.

Takže pokud vydělíte 27 čtyřmi, zbytek je 3.

Excel MOD funkce vs. VBA MOD operátor

Krok 1: Nyní se podívejte na rozdíl mezi operátorem Excel a VBA MOD. Mám hodnotu 54,24 a hodnota dělitele je 10.

Krok 2: Nyní, pokud použiji funkci MOD, dostanu výsledek jako 4.25.

Krok 3: Pokud ale provedete stejnou operaci s VBA, dostaneme 4 jako zbytek, ne 4,25.

Kód:

Sub MOD_Example2 () Dim i As Integer i = 54,25 Mod 10 MsgBox i End Sub

Krok 4: Spusťte tento kód a podívejte se, jaký je výsledek.

Věci k zapamatování

  • Není to funkce, ale je to aritmetický operátor.
  • Toto je zaokrouhlování a zaokrouhluje desítkové hodnoty dolů, na rozdíl od funkce MOD ve funkci listu.

Zajímavé články...