Funzione VBA VARTYPE

Funzione VarType VBA di Excel

VBA VARTYPE significa "Tipo di variabile". Questa funzione ci aiuta a identificare il tipo di dati assegnato alla variabile specifica o in parole semplici possiamo dire che trova il tipo di valore memorizzato o assegnato alla variabile.

Sintassi

VarName: Dobbiamo solo fornire il nome della variabile per trovare i dati memorizzati nel nome della variabile fornito.

Quindi, prende il nome della variabile come sintassi o argomento e nell'output restituisce il tipo di dati assegnato alla variabile o il tipo di dati memorizzati nella variabile.

Quindi, se ti sei mai chiesto come trovare il tipo di dati della variabile o il tipo di dati assegnati alla variabile, qui abbiamo una funzione VBA "VarType".

Esempi

Puoi scaricare questo modello Excel VBA VARTYPE qui - Modello Excel VBA VARTYPE

Esempio 1

In VBA durante la scrittura del codice di solito dichiariamo variabili e assegniamo loro un tipo di dati. Per un esempio, guarda il codice VBA sottostante.

Codice:

 Sub VarType_Example () Dim MyVar As String MyVar = "Hello" End Sub 

Nell'esempio sopra, abbiamo dichiarato la variabile come "String" e per questa stringa, abbiamo assegnato il valore "Hello".

Questo è un caso semplice ma è anche possibile dichiarare le variabili senza assegnare loro le variabili, quindi in questi casi, la funzione VarType ci aiuta.

Codice:

 Sub VarType_Example () Dim MyVar MyVar = "Hello" End Sub 

Nel codice sopra non abbiamo assegnato alcun tipo di dato ma abbiamo subito assegnato il valore "Hello", quindi utilizzando la funzione VarType possiamo trovare il tipo di dato della variabile.

Apri MSGBOX nella codifica VBA nel codice sopra.

Quindi apri la funzione VarType.

Ora inserisci il nome della variabile come argomento della funzione VARTYPE.

Codice:

 Sub VarType_Example () Dim MyVar MyVar = "Hello" MsgBox VarType (MyVar) End Sub 

Ora esegui il codice e guarda cosa otteniamo nella finestra del messaggio.

Abbiamo ottenuto il risultato come 8 perché VBA ha determinati codici per ogni tipo di tipo di dati variabile, quindi di seguito è riportato l'elenco dettagliato per te.

ValoreCostanteDescrizione
0vbEmptyLa variabile non è ancora inizializzata
1vbNullDati non validi assegnati
2vbIntegerIl valore della variabile è il tipo di dati "Integer"
3vbLongIl valore della variabile è il tipo di dati "Lungo"
4vbSingleIl valore della variabile è il tipo di dati "Singolo"
5vbDoubleIl valore della variabile è il tipo di dati "Double"
6vbCurrencyIl valore della variabile è il tipo di dati "Valuta"
7vbDateIl valore della variabile è il tipo di dati "Data"
8vbStringIl valore della variabile è il tipo di dati "String"
9vbObjectIl valore della variabile è il tipo di dati "Oggetto"
10vbErrorIl valore della variabile è Valore errore
11vbBooleanIl valore della variabile è il tipo di dati "Boolean"
12vbVariantIl valore della variabile è il tipo di dati "Variant" (utilizzato solo con array di varianti)
13vbDataObjectIl valore della variabile è l'oggetto di accesso ai dati
14vbDecimalIl valore della variabile è il tipo di dati "Decimale"
17vbByteIl valore della variabile è il tipo di dati "Byte"
20vbLongLongIl valore della variabile è il tipo di dati "LONG LONG" (valido solo su piattaforme a 64 bit)
36vbUserDefinedTypeIl valore della variabile è il tipo di dati "Definito dall'utente"
8192vbArrayIl valore della variabile è Array

Ok, ora il nostro codice ha risintonizzato il tipo di dati della variabile come 8, cioè il nome della variabile "MyVar" contiene il tipo di dati "String".

Esempio n. 2

Ora guarda il codice sottostante.

Codice:

 Sub VarType_Example2 () Dim MyVar Set MyVar = ThisWorkbook MsgBox VarType (MyVar) End Sub 

Eseguiamo questo codice e vediamo qual è il risultato.

Il risultato è 9, ovvero la variabile conteneva il tipo di dati "Oggetto". Sì, è corretto perché per la variabile "MyVar" abbiamo impostato il riferimento alla cartella di lavoro di "Questa cartella di lavoro".

Esempio n. 3

Ora guarda il codice sottostante.

Codice:

 Sub VarType_Example3 () Dim MyVar MyVar = 32500 MsgBox VarType (MyVar) End Sub 

Questo restituirà il risultato come 2.

Perché il numero 32500 assegnato alla variabile è un valore "Integer".

Ora cambierò il valore in 40000 e vedrò il risultato.

Codice:

 Sub VarType_Example4 () Dim MyVar MyVar = 40000 MsgBox VarType (MyVar) End Sub 

Questo darà il risultato come 3.

Poiché il valore Integer termina a 32767, quindi qualsiasi cosa sopra verrà considerata come un tipo di dati VBA LONG.

Ora racchiuderò il numero tra virgolette.

Codice:

 Sub VarType_Example5 () Dim MyVar MyVar = "40000" MsgBox VarType (MyVar) End Sub 

Esegui il codice e guarda il risultato.

Abbiamo ottenuto il risultato come 8, ovvero tipo di dati String.

Questo perché qualsiasi cosa fornita tra parentesi verrà trattata come una variabile String.

Cose da ricordare

  • VARTYPE è l'acronimo di "Variable Type".
  • Il tipo di dati è rappresentato da numeri univoci, quindi fare riferimento alla tabella per capire quale numero rappresenta il tipo di dati della variabile.