Operatore MOD VBA di Excel
In VBA MOD è uguale all'applicazione in matematica, quando un numero è diviso per il suo divisore e otteniamo un promemoria da quella divisione, questa funzione viene utilizzata per darci quel resto dalla divisione, non è una funzione in VBA piuttosto di quanto non sia un operatore.
MOD non è altro che MODULO è un'operazione matematica. È esattamente lo stesso della divisione, ma il risultato è leggermente diverso dove la divisione prende l'importo diviso, ma MOD prende il resto della divisione. Ad esempio: se dividi 21 per 2, il risultato della divisione è 10,50 per MOD è il resto della divisione, ovvero 1. (il numero 2 può dividere solo 20, non 21, quindi il resto è 1).
Nel normale Excel, è una funzione, ma in VBA non è una funzione. È solo un operatore matematico. In questo articolo, esamineremo in dettaglio questo operatore.

Sintassi
Solo per ricordarti, questa non è una funzione con sintassi. Per la comprensione del nostro lettore, lasciatemi metterlo nella parola.
Numero 1 MOD Numero 2 (Divisore)
Il numero 1 non è altro che qual è il numero che stiamo cercando di dividere.
Numero 2 questo è il divisore, cioè divideremo il numero 1 per questo divisore.
MOD il risultato dato dal numero 1 / numero 2.
Come utilizzare MOD in VBA?
Esempio 1
Segui i passaggi seguenti per scrivere il codice.
Passaggio 1: crea un nome per la macro.
Codice:
Sub MOD_Example1 () End Sub
Passaggio 2: definisci una delle variabili come " Intero ".
Codice:
Sub MOD_Example1 () Dim i As Integer End Sub
Passaggio 3: ora esegui il calcolo come "i = 20 MOD 2."
Come ho detto all'inizio, MOD è un operatore, non una funzione. Quindi ho usato la parola MOD come quando inserisco un segno più (+).
Codice:
Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 End Sub
Passaggio 4: ora assegna il valore "I" alla finestra del messaggio.
Codice:
Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 MsgBox i End Sub
Passaggio 5: eseguire la casella del messaggio del codice mostrerà il valore di "I."

Esempio n. 2
Mod in VBA restituisce sempre un valore intero, cioè senza decimali se fornisci il numero in decimali. Ad esempio, guarda il codice seguente.
Codice:
Sub MOD_Example2 () Dim i As Integer i = 26.25 Mod 3 MsgBox i End Sub
Il divisore 3 può dividere 24, quindi il resto qui è 2,25, ma l'operatore MOD restituisce il valore intero, cioè 2, non 2,25.

Ora modifico il numero a 26,51 e vedo la differenza.
Codice:
Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3 MsgBox i End Sub
Eseguirò questo codice e vedrò qual è il risultato.

Wow!!! Abbiamo zero come risposta. Il motivo per cui abbiamo ottenuto zero perché VBA arrotonda i numeri come fanno i nostri banchieri, ovvero qualsiasi punto decimale maggiore di 0,5 verrà arrotondato al valore intero successivo. Quindi, in questo caso, 26,51 viene arrotondato a 27.
Poiché 3 può dividere il 27 per 9, non otterremo alcun valore di resto, quindi il valore di i è uguale a zero.
Ora fornirò il valore del divisore anche in punti decimali.
Codice:
Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3.51 MsgBox i End Sub
Passaggio 6: eseguire questo codice e vedere qual è il risultato.

Abbiamo ottenuto 3 come risposta perché 26,51 verrà arrotondato a 27 e il valore del divisore 3,51 verrà arrotondato a 4.
Quindi se dividi 27 per 4 il resto è 3.
Funzione MOD di Excel e operatore MOD VBA
Passaggio 1: ora, dai un'occhiata alla differenza tra Excel e VBA MOD operator. Ho un valore di 54,24 e il valore del divisore è 10.

Passaggio 2: ora, se applico la funzione MOD, otterrò il risultato come 4.25.

Passaggio 3: ma se esegui la stessa operazione con VBA, otterremo 4 come resto, non 4.25.
Codice:
Sub MOD_Example2 () Dim i As Integer i = 54.25 Mod 10 MsgBox i End Sub
Passaggio 4: eseguire questo codice e vedere qual è il risultato.

Cose da ricordare
- Non è una funzione, ma è un operatore aritmetico.
- Questo è un roundup e arrotonda i valori decimali, a differenza della funzione MOD nella funzione del foglio di lavoro.