Come giustamente hai detto la variabile che tu dichiari nella routine è una variabile Locale. VB permette di non dichiarare le variabili, ovvero le dichiara lui da solo quando compila il codice nel caso in cui non sia stato il programmatore stesso ad esplicitare il tutto. Per questo motivo è sempre bene mettere all'inizio del codice (come ha detto anche cik) la stringa "Option Explicit", che fa sì che il programmatore debba per forza dichiarare tutte le variabili.
La variabile Msg che viene "vista" dalle altre routine non è altro che una variabile Variant vuota che VB dichiara in compilazione.
Ciao![]()