OVH Cloud OVH Cloud

Comment signaler

4 réponses
Avatar
Elio
Bonjour tout le monde.
Comment puis-je avertir la personne qui encode qu'elle=20
doit encoder des chiffres lorsqu'elle arrive sur un champ=20
num=E9rique.
Exemple : dans un champ num=E9rique, la personne doit=20
imp=E9rativement encoder des mois en chiffre (24, 32, 12=20
etc).
Merci pour l'aide.

Elio

4 réponses

Avatar
Arnaud [lwa]
Bonjour Elio,

| Bonjour tout le monde.
| Comment puis-je avertir la personne qui encode qu'elle
| doit encoder des chiffres lorsqu'elle arrive sur un champ
| numérique.
| Exemple : dans un champ numérique, la personne doit
| impérativement encoder des mois en chiffre (24, 32, 12
| etc).
| Merci pour l'aide.
|
| Elio

Ci-dessous un exemple que j'ai sous la main qui concernait un contrôle avec un numéro de
téléphone
pour n'autoriser que la saisie des chiffres :

Evénement sur changement du controle qui s'appelle TelFax

Private Sub TelFax_Change()
Me!TelFax.Value = EpurerChiffres(Me!TelFax.Text)
Me!TelFax.SelStart = Len(Me!TelFax.Value)
End Sub

avec la fonction :

Function EpurerChiffres(strTexte As String) As String
Dim Resultat As String
Dim Signe As String
Dim Position As Integer
If Len(strTexte) > 0 Then
For Position = 1 To Len(strTexte)
Signe = Mid$(strTexte, Position, 1)
If (Signe >= "0" And Signe <= "9") Then
Resultat = Resultat & Signe
End If
Next Position
EpurerChiffres = Resultat
End If
End Function

ça marche ?
a+
--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
Avatar
plusieurs solutions:

Soit prévenir de façon intuitive par un message
d'infobulle "attenton ce champs est un champ numérique !!"

Soit par le code /

If Me!NOM_DU_CHAMP >= 0
Else
MsgBox "attention vous devez entrer une valeur
numerique!",vbrCritical
End If

Ainsi si la aleur est du texte elle ne pourra etre
superieure a 0 et déclenchera le message d'erreur

Soit par le code sur evenement réception focus du contrôle

MsgBox "La valeur à entrer est une valeur numérique"

Ceci sert à prévénir avant la frappe elle peut d'ailleurs
etre combiné au Code précédent pour contrôler la saisie

Enfin dernière solution paramétrer la propriété type de
champ sur numérique ce qui engendrera une erreur et
définir le message d'Erreur (Propriété du champ dans
création de table)

Bon courage !!
;FR
Avatar
Merci bcp à tous les deux.
Demain matin je vais tester toutes les propositions.
A+
Avatar
Didier
Salut, autre solution possible:

Private Sub Text47_AfterUpdate()
If Not IsNumeric(Me.Text47) Then
MsgBox "MsgBox "attention vous devez entrer une
valeur numerique!",vbrCritical
End If
End Sub

Text47 est le champs de ton formulaire que tu veut
conditionné et la fonction IsNumeric(Me.Text47 ) test si
champs est du type numéric.

-----Message d'origine-----

plusieurs solutions:

Soit prévenir de façon intuitive par un message
d'infobulle "attenton ce champs est un champ
numérique !!"


Soit par le code /

If Me!NOM_DU_CHAMP >= 0
Else
MsgBox "attention vous devez entrer une valeur
numerique!",vbrCritical
End If

Ainsi si la aleur est du texte elle ne pourra etre
superieure a 0 et déclenchera le message d'erreur

Soit par le code sur evenement réception focus du
contrôle


MsgBox "La valeur à entrer est une valeur numérique"

Ceci sert à prévénir avant la frappe elle peut
d'ailleurs

etre combiné au Code précédent pour contrôler la saisie

Enfin dernière solution paramétrer la propriété type de
champ sur numérique ce qui engendrera une erreur et
définir le message d'Erreur (Propriété du champ dans
création de table)

Bon courage !!
;FR

.