L'ambito di una variabile è determinato dalla posizione in cui viene dichiarata. Quando si dichiara una variabile all'interno di una routine, solo il codice all'interno di tale routine può accedere o modificare il valore della variabile. Ha un ambito locale ed è una variabile a livello di routine. Se si dichiara una variabile all'esterno di una routine, tale variabile è riconoscibile per tutte le routine nello script. Si tratta di una variabile a livello di script e pertanto essa avrà un ambito a livello di script.
La durata di una variabile dipende dalla durata della sua esistenza. La durata di una variabile a livello di script va dal momento in cui viene dichiarata fino al termine dell'esecuzione dello script. A livello di routine, una variabile esiste solo finché il controllo rimane all'interno della routine. All'uscita dalla routine, la variabile viene eliminata. Le variabili locali sono ideali come spazio di memorizzazione temporaneo durante l'esecuzione di una routine.
Negli esempi seguenti viene illustrato l'uso delle variabili BSL.
Esempio 1: ambito globale
Dim GlobalVariable
GlobalVariable = "This is a script-level variable."
Sub MySub
GlobalVariable = "Modified within procedure."
End Sub
Esempio 2: ambito locale
Sub MySub
Dim LocalVariable
LocalVariable = "This is a local variable."
End Sub