affichage msgbox 1 seule fois losque réponse yes

pascal21

XLDnaute Barbatruc
bonjour le forum
j'ai un petit soucis avec l'affichage d'un msgbox
j'ai un code qui déclenche m'apparition d'un message sous certaines conditions
j'aimerais que lorsque j'aurai fais ce que demande le msgbox celui-ci n'appraisse plus
je m'explique
si la cellule a1= "1" et la cellule "a2 = "1" alors msgbox me demande si je veux aller feuil2
si je reponds oui il ne faudarit plus que le massage n'apparaisse avant un certain temps, disons 10 jours
jsi je réponds non alors le message est reproposé à l'ouverture du classeur la prochaine fois
un ptit exemple pour mieux comprendre
mon idée est que si je vais feuil2 voir le stock, le msg n'est plus proposé avent 10 jours
la condition avec les deux "1" en cellule a1 et b1 n'est pas obligatoire
j'étais parti là dessus en pensant annulé un "1" si j'ouvre feuil2
mais compliqué pour moi
donc si vous avez une solution!!
merci
 

Pièces jointes

  • Classeur1.xls
    26.5 KB · Affichages: 69
  • Classeur1.xls
    26.5 KB · Affichages: 75
  • Classeur1.xls
    26.5 KB · Affichages: 76

JNP

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

Bonjour Pascal21 :),
Si j'ai bien suivi ton problème, ne pourrais-tu pas simplement déclencher sur l'évènement activate de ta feuille de stock le stockage de la date du jour (fonction Now). A ce moment là, un simple test à l'ouverture entre la date stockée et la date du jour te permettrait de ne faire apparaître ton message box que si la différence entre les deux est de 10 jours par exemple.
A te lire :cool:
 

pascal21

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

bonjour je n'ai pas tout compris mais je vais essayer
une petite précision:
le"1" de la celulle a1 est affiché en fait si une date situé dans une autre cellule c1(par exemple) est dans moins de 7 jours
ex c1 = 29/2/08 alors a1 =1 dans ce cas le msgbox m'invite à aller voir feuil2 si j'ai bien tout ce qui me faut pour la date du 29/2/08(entretien)
une fois cette vérification faite je n'ai plus besoin de l'annonce du msgbox
pfffffff pas facile d'être clair aujourd'hui!!!!
 

JNP

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

Re :),
Je penses qu'à force d'avoir la tête dans le guidon, on ne voit plus ce qui est simple... :D mais c'est humain !
Code pour ta feuille de stock :
Code:
Private Sub Worksheet_Activate()
Cells(1, 1) = Now
End Sub
Test pour ton message box :
Code:
If Sheets("Stock").cells(1,1) - Now < 10 then MsgBox...
Est-ce plus clair ? :cool:
 

pascal21

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

on doit mal se comprendre
dans le code que tu me donne le msg s'affiche quoi qu'il arrive
je recommence:
pour le classeur final ce que je souhaite avoir
j'ai des dates de prévisions d'entretien de machines(feuil1 cel a1) j'ai bidouillé une formule qui m'avertit 7 jours avant que cet entretien arrive
lorsque j'ouvre le classeur et que un entretien est dans - de 7 jours je veux q'un msg box m'invite à aller voir le stock de pieces (feuil2)
si je reponds "yes" je ne souhaite plus voir ce msgbox avant la prochaine échéance d'entretien (environ 1 mois et +)
ça m'a l'air plus clair cette fois
edit le "1" cellule a1 est en fait: si entretien - de 7 jours alors "1"
ne sert qu'a déclencher le msgbox ou selon le cas à embrouiller celui qui à la gentillesse de m'aider lol!!!!!!
ne serait-ce pas plus simple lorsque le msg se montre de lui interdire de revenir avant 10 jours si je clic "yes"
 

JNP

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

Re :),
Dans ce cas là, le plus simple est :
Si MsgBox = Yes, alors, Feuil Cell A3 = 1
et lors de l'ouverture :
Si Feuil Cell A3 = 1, alors, pas de Message Box...
Mais pour la remise à zéro...
C'est le serpent qui se mord la queue...
A moins que tu ne mettes dans ta feuille de stock le fait que l'entretien est fait...
Finalement, un double test entre l'entretien et la date serait peut-être la solution...
Pas évident ton histoire, mais on va trouver :cool:
 

pascal21

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

dans la feuil que tu appelle stock(feuil2) je ne fais que consulter le stock et éventuellement passer une commande de pièces
j'avais pensé à ça
feuil1 a1 "1" feuil2a1"1" si j'ouvre feuil2 alors 1 feuil2a1 s'efface
se qui à pour effet de ne pas déclencher le msg si auparavant je mets cette condition
simplifié en français
si feuila1 ="1" et feuil2a1 ="1" alors msgbox
si reponse oui alors ouvrir feuil2 et feuil2a1 =""
(ça interdira bien l'affichage du msg lors de la prochaine ouverture du classeur
maintenant il faudrait trouver le moyen de réecrire feuil2a1 "1"
pour pouvoir relancer le msg à la prochaine session d"entretien (suis plus très clair là!!!)
à savoir lors que l'entretien aura été fait je renseigne la feuil1 qui me redonnera une nouvelle date d'entretien (dans environ 1 mois et +) pas fixe dépent de la fréquence d'utilisation de la machine
question dans ce cas
comment dire à feuil2a1 de réecrire "1" lorsque l'entretien à été fait Cad lorsque la date d'entretien à changée
 

wilfried_42

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

Bonjour à tous

Une petite idee en passant : mais c'est un emplatre plus qu'un pensement

Ton probleme se pose dans le temps........... x jours

donc : une feuille Param : En A1 : Vrai ou Faux, En A2 la date

Si A1 = faux alors je fais mes test et j'envoie le message
si l'action est faite, A1 = VRAI et A2 = Date

Dans worbooks_open

Si Date >= A2 + xjours alors A1 = FAUX

Résultat, si action non faite, A1 = VRAI et A2 = Date, ---> reaffichage du message
Si l'action est Faite, A1 = FAUX tant que la Date n'a pas x jour de plus que A2
 

JNP

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

Re :),
Je ne suis pas très bon en mécanique ou suivi des commandes, mais, ne serait-il pas plus simple, dès le départ de tester si les stocks sont suffisants pour la maintenance ?
Tu pourrais faire le suivi mensuel avec une fonction du type Mod, qui te permettrait, à l'approche de la date fatidique, de vérifier si les pièces en stock sont suffisantes... :cool:
 

pascal21

XLDnaute Barbatruc
Re : affichage msgbox 1 seule fois losque réponse yes

re-bonsoir
au final je crois tout simplement que je vais rester sur ma 1ere idée
vu la difficulté
j'ai une cellule qui m'avertit que je suis à - de 7 jours de l'entretien
je vérifie mes stocks et je commande si besoin est
en fait je m'aperçois que le message avait pour seul interet d'ouvrir la bonne feuille didiée à la machine qui doit être entretenir (sic!!!)
merci quand même pour votre aide
edit wil ,je vais à tout hasard regarder la slolution que tu apporte on ne sait jamais
 
Dernière édition:

Discussions similaires

Réponses
4
Affichages
352
Réponses
7
Affichages
492
  • Question
Microsoft 365 TEXTBOX
Réponses
7
Affichages
496

Statistiques des forums

Discussions
314 017
Messages
2 104 582
Membres
109 082
dernier inscrit
Narlock