Visual Basic dispone di 17 tipi di dati di base che vengono utilizzati per la costruzione di tutti i dati memorizzati in programmazioni Visual Basic . In cima a questi, ci sono letteralmente centinaia di classi complesse e gli oggetti che possono essere utilizzati dagli sviluppatori di Visual Basic . Booleano  
 booleana è una variabile che può avere solo uno dei due valori: vero o falso . La quantità esatta di memoria assunto dipende l'architettura del computer su cui il programma Visual Basic è in esecuzione . 
 Byte 
 
 Un byte rappresenta un numero senza segno compreso tra 0 e 255 . Come dice il nome , un byte consuma esattamente un byte di memoria . C'è anche una versione firmata di nome sbyte , che ha valori di -128 a 127. 
 Char 
 
 char rappresenta un singolo carattere Unicode 16 . Si consuma 2 byte di memoria e ha più di 65.000 possibili valori per rappresentare tutti i valori nel set di 16 caratteri Unicode . 
 Data 
 
 Data consuma 8 byte di memoria e detiene una data e l'ora nel calendario gregoriano . Le uniche date e gli orari validi sono quelli che iniziano a mezzanotte del 1 gennaio 0000 dC e termina il 11:59:59 del 31 dicembre 9999 . 
 Decimale 
 < br > 
 decimale è un grande valore progettato per contenere i numeri frazionari con fino a 28 cifre decimali . Consuma 16 byte di memoria . È simile al tipo "Double" di dati , molto più lento ma molto più preciso . 
 Doppie e singole 
 
 Il tipo double sacrifici di dati l'esattezza dei dati decimali tipo al fine di guadagnare più posizioni decimali . Si consuma solo 8 byte di memoria , ma può rappresentare fino a 324 cifre decimali utilizzando un algoritmo di archiviazione sofisticato . Tuttavia, non può memorizzare tutti i valori possibili in tale intervallo e deve arrotondare al valore più vicino . Il più delle volte , questo non è un problema , e il doppio è molto più veloce di decimale. Tuttavia, è poco adatta alle operazioni in cui la precisione è assolutamente essenziale , come la finanza . Singolo è una versione a 4 byte del doppio dell'oggetto . Fornisce i valori decimali con un massimo di 48 posti . Come il doppio , non è perfettamente preciso e quindi non è adatto per i documenti finanziari . 
 Integer 
 
 Integer è una variabile sottoscritta che consumano 4 byte di memoria e ha valori da -2.147.483.648 a 2.147.483.647 . La versione unsigned è uinterger , che assume valori da 0 a 4.294.967.295. 
 Lunga 
 
 lunga sta per intero lungo . Esso utilizza il doppio di memoria ( 8 byte) e può contenere valori da 9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 . C'è anche una versione unsigned , ulong . 
 Breve 
 
 intero breve utilizza la metà della memoria come il numero intero ( 2 byte) . Esso fornisce un range da 32.768 a 32.767 . La versione unsigned è ushort . 
 String 
 
 String fornisce una sequenza di 0-2000000000 oggetti Char . La memoria consumata naturalmente dipende dalla lunghezza della stringa . 
 Oggetto 
 
 oggetto è un tipo di dati generico che può contenere l'indirizzo di memoria di qualsiasi altra variabile , classe o tipo di oggetto . Si consuma 4 byte di memoria su una versione a 32 bit di Windows e 8 byte su una versione a 64 bit di Windows . 
 User Defined 
 
 oggetti definiti dall'utente permettere uno sviluppatore creare propri tipi di dati composti da una combinazione degli altri tipi di dati forniti . E 'simile al tipo di dati C struct .