Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
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
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
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.
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.
Le même fichier avec une macro supplémentaire de conversion en chiffres sans * mais avec un souci : message d'erreur si j'utilise ma douchette alors qu'il n'en ait rien avec une saisie manuelle.
Merci pour votre contribution.
a26
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
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
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
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD