OVH Cloud OVH Cloud

TextBox

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


--
Emmanuel ROGER
Service Informatique U.F.J.T.
emmanuel.roger@ufjt.org ou informatique@ufjt.org

1 réponse

Avatar
Frédéric Sigonneau
Bonsoir,

Parmi d'autres approches possibles, celle-ci peut peut-être te convenir.
Supposons, dans un projet, un Userform avec une TextBox dont la propriété Value
(ou Text) est initialisée avec par exemple la chaîne "zaza". Après copie dans
une module standard du même projet, exécuter la procédure 'test' :

'======================== Function Valeur_OK(tBox As Object)
If Not IsNumeric(tBox.Value) Then
MsgBox ("Valeur incorrecte !!!")
End If
End Function

Sub test()
MsgBox UserForm1.TextBox1.Value
Valeur_OK UserForm1.TextBox1
End Sub
'========================
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


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

--
Emmanuel ROGER
Service Informatique U.F.J.T.
ou