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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
-- Emmanuel ROGER Service Informatique U.F.J.T. ou
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
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