OVH Cloud OVH Cloud

EditBoxes

1 réponse
Avatar
EXCNRE
Bonjour,

Qu'est-ce qui remplace la fonction EditBoxes de Excel 97 Dans Excel XP ?!?
Dans un formulaire VBA (EXCEL XP) comportant une vingtaine de TextBox
identiques, je souhaite définir une fonction commune de test de validité des
données saisies.
Or, je n'arrive pas à passer le nom de la TextBox en cours comme argument de
cette fonction, alors que c'était si facile avec le contrôle EditBoxes de
Excel 97.

Ex: (sous Excel 97 qui fonctionnait)
Function Valeur_OK(ValZone As String)
If Not IsNumeric(EditBoxes(ValZone).Value) Then
MsgBox ("Valeur incorrecte !!!")
EditBoxes(ValZone).Focus = ValZone
End If
End Function

ensuite,
ActiveDialog.EditBoxes("TextBox_1")
ActiveDialog.EditBoxes("TextBox_2")
....

Comment faire sous Excel XP ?

Merci d'avance

CNRE

1 réponse

Avatar
Michel Pierron
Bonsoir EXCNRE;
Rien; c'est la même chose.
Tu pourrais te mettre aux UserForms, ce serait un plus; mais si tu y tiens,
je ne pense pas que Value soit une propriété valable en ce cas.
D'abord, tu n'as pas besoin de la fonction puisque tu peux définir le type
de saisie dans les propriétés du contrôle (Entier ou Nombre); sinon, ce
serait plus quelque chose du genre:

Function Valeur_OK(ValZone As String)
If Not IsNumeric(ActiveDialog.EditBoxes(ValZone).Text) Then
MsgBox ("Valeur incorrecte !!!")
ActiveDialog.EditBoxes(ValZone).Text = ""
End If
End Function

MP

"EXCNRE" a écrit dans le message de
news:bte1e0$gun$
Bonjour,

Qu'est-ce qui remplace la fonction EditBoxes de Excel 97 Dans Excel XP ?!?
Dans un formulaire VBA (EXCEL XP) comportant une vingtaine de TextBox
identiques, je souhaite définir une fonction commune de test de validité
des

données saisies.
Or, je n'arrive pas à passer le nom de la TextBox en cours comme argument
de

cette fonction, alors que c'était si facile avec le contrôle EditBoxes de
Excel 97.

Ex: (sous Excel 97 qui fonctionnait)
Function Valeur_OK(ValZone As String)
If Not IsNumeric(EditBoxes(ValZone).Value) Then
MsgBox ("Valeur incorrecte !!!")
EditBoxes(ValZone).Focus = ValZone
End If
End Function

ensuite,
ActiveDialog.EditBoxes("TextBox_1")
ActiveDialog.EditBoxes("TextBox_2")
....

Comment faire sous Excel XP ?

Merci d'avance

CNRE