Tipo VBA

Il tipo è un'istruzione in VBA che viene utilizzata per definire variabili simili alla funzione DIM, viene utilizzata a livello definito dall'utente in cui abbiamo uno o più valori in una variabile, ci sono due nomenclature per l'istruzione di tipo che è pubblica o privata tuttavia questi sono opzionali da usare, ma il nome della variabile e il nome dell'elemento sono obbligatori.

Che cos'è l'istruzione del tipo in Excel VBA?

L'istruzione del tipo VBA viene utilizzata per definire le variabili sotto un unico nome di gruppo con diversi tipi di dati assegnati a ciascuna variabile. Questo ci aiuta a raggruppare più variabili sotto un unico oggetto per usarle sotto il nome del tipo definito.

Dichiarando l'istruzione Type possiamo evitare di utilizzare i moduli Class in VBA. Non necessita di moduli stringa perché può essere incorporato in moduli già esistenti che possono farci risparmiare spazio.

In uno degli articoli precedenti, abbiamo discusso di "VBA ENUM" per raggruppare tutte le variabili sotto il singolo nome del gruppo.

Ad esempio, se hai un nome di gruppo chiamato "Cellulari", abbiamo membri del gruppo come "Redmi, Oppo, Vivo, Samsung, LG e così via." Quindi la dichiarazione Enum possiamo raggruppare insieme ai rispettivi valori.

Enum Mobiles

Redmi = 12000

Oppo = 18000

Vivo = 18000

Samsung = 25000

LG = 15000

End Enum

In questo modo, abbiamo creato enumerazioni in quell'articolo. Il problema con l'istruzione Enum in quanto può contenere solo un tipo di dati LONG. Per raggruppare insieme variabili con diversi tipi di dati, possiamo utilizzare "Istruzione TIPO VBA". In questo articolo, ti mostreremo come costruire un'istruzione Type in VBA. Continuare a leggere…

Sintassi

Prima di dichiarare le variabili utilizzando l'istruzione Type, dai un'occhiata alla sintassi:

Tipo Nome gruppo             [Variabile 1] come Tipo di dati variabile             [Variabile 2] come Tipo di dati variabile             [Variabile 3] come Tipo di dati             variabile [Variabile 4] come Tipo di dati             variabile [Variabile 5] come Tipo di dati variabile Tipo di fine

Questi tipi di istruzioni possono essere dichiarati all'interno del modulo così come nella parte superiore del modulo come le nostre variabili globali in VBA.

Il tipo VBA può contenere variabili oggetto, può contenere array. Tuttavia, non può contenere procedure, funzioni.

Esempio di istruzione di tipo in VBA

È possibile scaricare questo modello di istruzione del tipo VBA qui - Modello di istruzione del tipo VBA

Ok, iniziamo il processo di dichiarazione delle variabili con l'istruzione Type. Vedremo lo stesso esempio di dichiarazione di marchi di dispositivi mobili come quello che abbiamo utilizzato in VBA Enum.

Passaggio 1: nella parte superiore del modulo, avviare la parola "Tipo" e assegnare un nome al Tipo di gruppo.

Codice:

 Digitare MobileBrands End Type 

Passaggio 2: nei marchi di dispositivi mobili quali sono le cose che vediamo di solito. Vediamo prima Name, quindi dichiara la variabile come Name as String.

Codice:

 Digita il nome MobileBrands come tipo di fine stringa 

Passaggio 3: dopo il nome, controlliamo la data di lancio. Dichiarare la variabile come LaunchDate come Date.

Codice:

 Digita MobileBrands Name As String LaunchDate As Date End Type 

Passaggio 4: la prossima cosa è controllare la capacità di archiviazione. Per dichiarare la variabile come Archiviazione come Integer.

Codice:

 Digitare MobileBrands Name As String LaunchDate As Date Storage As Integer End Type 

Passaggio 5: la prossima cosa è che controlliamo la capacità della RAM.

Codice:

 Digitare MobileBrands Name As String LaunchDate As Date Storage As RAM As Integer End Type 

Passaggio 6: finalmente controlliamo il prezzo.

Codice:

 Digitare MobileBrands Nome come stringa Data di lancio come data Archiviazione come intero RAM come intero Prezzo come tipo long 

Ora nella procedura Sub dichiarando la variabile come Type Name, cioè MobileBrands, possiamo accedere a tutti questi tipi di dati variabili.

Passaggio 7: creare una sottoprocedura.

Codice:

 Sub Type_Example1 () End Sub 

Passaggio 8: ora dichiara la variabile "Mobile" come MobileBrnads.

Codice:

 Sub Type_Example1 () Dim Mobile As Mob End Sub 

Passaggio 9: Ora con il nome della variabile "Mobile" possiamo accedere a tutte le variabili di "MobileBrands".

Codice:

Passaggio 10: ora memorizza ogni valore come di seguito.

Codice:

 Digita MobileBrands Name As String LaunchDate As Date Storage As integer RAM As integer Price As long End Type Sub Type_Example1 () Dim Mobile As MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub 

Infine, mostra il risultato in una finestra di messaggio VBA come quella sotto.

Codice:

 Sub Type_Example1 () Dim Mobile As MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile. LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub 

Ora esegui il codice usando il tasto F5 o manualmente e vedi il risultato in una finestra di messaggio.

In questo modo, possiamo usare l'istruzione "VBA Type" per definire un nuovo tipo di dati nella sottoprocedura.

Tipi VBA vs Classe VBA

Tipo VBA spesso paragonato ai moduli di classe VBA. Ci sono alcune differenze tra di loro. Di seguito sono riportate le differenze comuni.

  • Difference 1: VBA Type can contain only Public variables. VBA Class can contain both Public as well as Private variables.
  • Difference 2: VBA Type cannot contain Procedures and Function. VBA Class contains both of them along with properties.
  • Difference 3: VBA Type can be declared in any of the modules and procedures. VBA Class can only be declared in dedicated class modules.