MsgBox Avec conditions

Résolu/Fermé
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 - 20 janv. 2017 à 17:58
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 23 janv. 2017 à 14:42
Bonsoir à tous,

Je cherche à créer une message box qui apparaitrait quand une certaine case indique "FAUX" et n'apparaitrait pas si les données saisies sont correctes. (C'est une case où l'on doit saisir une date comprise entre deux date).

Merci pour votre aide.

Benoit

10 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
20 janv. 2017 à 18:17
Bonjour,

Une Mise en Forme Conditionnelle avec changement de couleur n'irait-elle pas mieux ?
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
20 janv. 2017 à 18:22
Si bien sur, et je sais comment la faire,
mais pourquoi faire simple quand on peut faire compliqué...Lol
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié par f894009 le 20/01/2017 à 18:57
Re,
Ah oui, c'est pour une "case" ou une palanquee?
Ce "Faux" apparait par miracle ou ..??
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
20 janv. 2017 à 19:01
Quand je rentre une date dans une certaine case ("P1"), j'ai fait une formule dans une autre case ("P3")pour savoir si la date rentrée est valable (bien comprise dans la plage de date prévue).
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
20 janv. 2017 à 19:06
Re,
Donc, c'est en P3 qu'apparait le "FAUX" si pas ok
dans une certaine case ("P1")
Que cette cellule, pas d'autres?
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
20 janv. 2017 à 19:11
que cette cellule
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
20 janv. 2017 à 19:29
Re,
Vous connaissez le VBA Excel ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
20 janv. 2017 à 21:52
Oui je connais. Je suis débutant. Mais je connais
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
21 janv. 2017 à 15:50
Bonjour,
Z'etes toujours a l'ecoute ?
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
21 janv. 2017 à 21:21
Bonsoir,

Oui toujours à l'écoute. J'ai trouvé une solution. Je la poste tout à l'heure si vous voulez donner un avis.

Cdt
Benoît
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
22 janv. 2017 à 08:24
Bonjour,
Ok, montrez la chose
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
22 janv. 2017 à 14:18
Bonjour,

Code sur la page

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("O1:U1")) Is Nothing Then
Call Boitededialogue
End If
End Sub

Code macro
Sub Boitededialogue()
'informe l'utilisateur d'une mauvaise saisie de date
If Range("P3") = "Faux" Then
Retour = msgbox("Saisir une date entre le premier jour et le dernier jour de l'année scolaire", 48)
End If
End Sub


Voilà. Ca fonctionne.
Des idées d'améliorations ?

Merci
Benoit
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié par f894009 le 22/01/2017 à 16:17
Bonjour,
Ca c'est votre demande post 4
Quand je rentre une date dans une certaine case ("P1"), j'ai fait une formule dans une autre case ("P3")

Maintenant c'est:
Range("O1:U1"))
Ca fait 7 "case"!!!!!!!!

Correspond peut-etre au jours de la semaine ?

avec ceci un peu mieux mais pas suffisant, il est possible de changer de cellule meme mal remplie, c'est pour cela que je demande des precisions sur le "a quoi ca sert"
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo fin:
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Target, Range("O1:U1")) Is Nothing And Range("P3") = "Faux" Then
        Target.Select
        Application.EnableEvents = False
        Target = ""
        Retour = MsgBox("Saisir une date entre le premier jour et le dernier jour de l'année scolaire", 48)
    End If
fin:
    Application.EnableEvents = True
End Sub
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
22 janv. 2017 à 16:54
Pour des raisons de présentation j'ai fusionné les cases o1 a u1. Dans le code de page il ne voulait pas prendre p1. Donc j'ai mis o1:u1 et ca fonctionne.
donc c'est un tableau qui calcule les moyennes de mes élèves : moyenne annuelle et moyenne par trimestre. Ma macro sert à détecté les fautes de saisies des dates de devoirs et donc de bien calculer les moyennes par trimestre.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017
22 janv. 2017 à 17:31
Re,
Ma macro sert à détecté les fautes de saisies des dates de devoirs et donc de bien calculer les moyennes par trimestre.
Oui, tout a fait Thierry, je vous ai mis un exemple de code qui, comme le votre, n'est pas suffisant pour controler les cellules
Vous pouvez mettre votre fichier a dispo sans donnees confidentielles car je ne comprends pas tout

Pour transmettre un fichier,
Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de pièce jointe tel que cjoint.com

Allez sur ce site : https://www.cjoint.com/
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
22 janv. 2017 à 21:42
Bonsoir

Voilà
https://www.cjoint.com/c/GAwuPPE4btD
Merci.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié par f894009 le 23/01/2017 à 08:43
Bonjour,

Une facon de voir pour votre fichier. Doit y avoir petite confusion Trimestre/Semestre!!!
Vous avez teste rajout intero ??

https://www.cjoint.com/c/GAxhQg42Zxf
0
Benoit_Lyon Messages postés 98 Date d'inscription vendredi 20 janvier 2017 Statut Membre Dernière intervention 13 décembre 2017 1
23 janv. 2017 à 09:44
sur ma version, le rajout interro ne bug pas. Dans votre version, c'est moyen.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié par f894009 le 23/01/2017 à 13:35
Re,

Ma version est votre fichier que j'ai recupere et modifie, mais pas cette partie la.
Quel EXCEL avez-vous ?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié par f894009 le 23/01/2017 à 14:45
Re,
Le fait que vous effaciez la zone du premier devoir seme la pagaille pour un rajout(je peux palier a cet anomalie) et votre code pour O1 n'ira pas pour les devoirs suivants, faudra revoir votre copie (pas mal pour un "enseignent")
D'ailleur, pourquoi effacez vous le premier devoir?
Autre question, un devoir par trimestre ou plus ?
0