Su una form nella sezione "public class" dichiaro

Public MyVar as String

Su una funzione della form chiamo una routine che risiede in un modulo:
...
MyVar = "testo"
msgbox(MyVar)
myroutine(MyVar)
....

Sul modulo:

Public Sub myroutine(byval MyVar as string)
msgbox(MyVar)
End Sub

La prima messagebox visualizza la stringa "testo", la seconda non visualizza nulla.

Perchè?!?!?