Afficher un message d'erreur pour une macro

a26

XLDnaute Occasionnel
Bonsoir à tous,
Pouvez-vous m'aider à trouver la solution d'une macro qui m'avertirait d'un dépassement de chiffre (variable)
dans une cellule donnée.
Merci beaucoup,
a26
 

Pièces jointes

  • Valeurs.xlsm
    8.7 KB · Affichages: 31

a26

XLDnaute Occasionnel
Voilà le problème : If Target > [I3] Then. J'essaie de joindre un classeur avec la macro en question dans une prochaine discussion.
Merci pour ta contribution youky, mais je pense que mes problèmes viennent de la construction de mon classeur.
J'utilise une douchette pour ce fichier et j'adopte le code 39 donc avec des * avant et après le chiffre comme ceci *45*
par exemple que je suis obligé d'enlever par formule c'est pour cela que j'ai 2 colonnes réf.
Je suis donc bloqué à la différence d'un classeur avec saisie normale.
A moins que tu aies une solution pour moi j'abandonne la discussion et te remercie encore pour ta contribution qui m'aura quand même appris l'utilisation de la msgbox.
a26
 

youky(BJ)

XLDnaute Barbatruc
Dommage de baisser les bras…...
Une macro trouvera facilement 45 dans *****45***
Si tu fais un bon fichier exemple avec quelque lignes je te garantie des satisfactions.
Fichier avec quelques codes exemple comme tu les reçois et même colonne et un exemple de ce que tu attends.

Bruno
 

a26

XLDnaute Occasionnel
Dommage de baisser les bras…...
Une macro trouvera facilement 45 dans *****45***
Si tu fais un bon fichier exemple avec quelque lignes je te garantie des satisfactions.
Fichier avec quelques codes exemple comme tu les reçois et même colonne et un exemple de ce que tu attends.

Bruno
Bonjour youky,
Merci de relancer, je te joins un petit fichier exemple dans l'après-midi.
Bonne journée,
a26
 

a26

XLDnaute Occasionnel
Regarde si cela conviens,
Bruno
Je viens de voir ta réponse après mon envoi. Tes modifications ont en partie résolu le problème.
Il reste encore un petit réglage : en cas d'erreur de saisie pour nombre supérieur à la cellule de réf.
Après avoir cliqué sur recommencer la cellule active remonte à la saisie précédente et donc efface un bon résultat.
Excuse moi de ne pas pouvoir suivre maintenant la conversation car je dois m'absenter.
Je te recontacte demain.
Merci et bonne soirée
 

Pièces jointes

  • douchette course (1).xlsm
    54.7 KB · Affichages: 17

youky(BJ)

XLDnaute Barbatruc
En col C dès qu'il y a une * c'est plus numeric donc voici avec une modif
je mets le target en variable nx sans les **** et on verifie nx et non le target
Bruno
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range(" c6:c406,g6:g406")) Is Nothing Then
nx = Val(Replace(Target, "*", ""))
  If nx > Val(Replace([I3], "*", "")) Then
  Target.Select
  If MsgBox("Attention valeur trop grande !" & vbCr & _
  "Vous ne devez pas dépasser " & [I3], vbExclamation + vbRetryCancel, "ANNULATION") = vbRetry Then Target.Value = "" 'on efface
  End If
End If
End Sub
 
Dernière édition:

a26

XLDnaute Occasionnel
Essayer ce fichier je supprime les étoiles dès la saisie
Cela facilite bien les choses
Bruno
Bonjour Youky,
En effet, ta solution simplifie beaucoup les problèmes de saisie.
Grâce à toi j'ai un résultat inespéré en début de discussion. Merci encore de m'avoir incité à poursuivre et merci de ta patience au moment ou je ne voyais plus de solution au problème.
A bientôt sur le forum.
Bonne journée,
a26
 

Discussions similaires

Réponses
3
Affichages
229

Statistiques des forums

Discussions
311 712
Messages
2 081 802
Membres
101 819
dernier inscrit
lukumubarth