Oppure tramite le api di win:
codice:
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Sub SetNumeric(TextBox As TextBox, Optional Force As Boolean)
Dim style As Long
Const GWL_STYLE = (-16)
Const ES_NUMBER = &H2000
style = GetWindowLong(TextBox.hWnd, GWL_STYLE)
If Force Then
style = style Or ES_NUMBER
Else
style = style And Not ES_NUMBER
End If
SetWindowLong TextBox.hWnd, GWL_STYLE, style
End Sub
basta che chiami la sub per ogni textbox che vuoi limitare all'inserimento esclusivamente numerico cosi':
codice:
call SetNumeric(nometextbox1,true)
call SetNumeric(nometextbox2,true)
...
..e sei a posto.
Per gli array di controlli, devi passare ciascun elemento dell'array, non puoi passare tutto l'array (mi pare)