VBA MOD

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 che questa non è una funzione con sintassi. Per la comprensione del nostro lettore lasciate che lo metta 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?

Puoi scaricare questo modello di funzione MOD VBA qui - Modello di funzione MOD 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: definire una delle variabili come " Integer ".

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 più (+).

Codice:

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

Passaggio 4: ora assegna il valore "I" alla casella 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, ovvero senza decimali se si fornisce 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 vs 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.