purtroppo mi dava dei problemi sull'exit function e end function. Tolto quello, non me lo calcolava. Ma non so perchè, leggendo il tuo codice mi è venuta un'idea:
codice:
Dim i As Integer
    For i = 1 To 12
        If MonthName(i) = LCase(CStr(Text1(0).Text)) Then
                num = i
                Exit For
        End If
    Next i
End Sub
perfettamente funzionante. Grazie.

una cosa: cosa c'è di sbagliato qui?
codice:
Dim cn as New ADODB.Connection
perchè mi dà errore di "Type Mismatch".