code pour fermer une msgbox

  • Initiateur de la discussion Initiateur de la discussion amel
  • Date de début Date de début

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 !

A

amel

Guest
bonjour le forum!
j'aimerais fermer une msgbox soit en cliquant sur le bouton 'annuler' soit en cliquant 'sur la petite croix 😱 je ne sais pas trop comment ça se code.. Merci de votre aide

Dim Reponse As String


Reponse = InputBox('Entrez le numero du rapport:') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('feuil1').cells(3, 2)
maselection.Value = Reponse

If Reponse = Empty Then ' test pour forcer la saisie par l'utilisateur
Reponse = InputBox(' Vous n'avez pas entré de numero! Entrez le numero du rapport:')

Set maselection = Application.Worksheets('feuil1').cells(3, 2)
maselection.Value = Reponse
End If
 
Bonjour Amel

tu parles de quoi exactement inputbox ou msgbox ?
car dans ton exemple il n'y a que des inputbox.

d'apres l'aide vba :

Affiche un message dans une boîte de dialogue, attend que l'utilisateur clique sur un bouton, puis renvoie une valeur de type Integer qui indique le bouton choisi par l'utilisateur.

Syntaxe

MsgBox(prompt[, buttons] [, title] [, helpfile, context])


expression.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId, Type)
 
Je me suis mal exprimée... En fait j'ai une succession d'affichage d'inputbox, qui demande à l'utilisateur de saisir des données, je souhaite qu'en cliquant sur 'la ptite croix' le programme s'arrete, en effectuant ce que tu m'a dis Didier, l'inputbox se ferme bien mais la suivante s'affiche..je voudrais pouvoir les stopper toute à n'importe quel moment..
 
re


Code:
Sub essai()
Dim Reponse As String
Reponse = InputBox('Entrez le numero du rapport:') 'affichage de la boite de dialogue
If Reponse = '' Then
    rep = MsgBox('Vous n'avez pas saisi de données ! Voulez-vous continuer ?', vbYesNo, 'Erreur de saisie')
        If rep = vbYes Then
            Exit Sub
        Else
            Reponse = InputBox(' Vous n'avez pas entré de numero! Entrez le numero du rapport:')
        End If

Else
Set maselection = Application.Worksheets('feuil1').Cells(3, 2)
maselection.Value = Reponse
End If
Debug.Print Reponse
End Sub
 
Voici un pti bout du code, j'en ai encore des lignes et des lignes du meme genre... lorsque je le lance, tout les inputbox s'enchainent les unes apres les autres, si par exemple je veux stopper la saisie dès la 2eme inputbox, ce n'est pas possible.. je suis obligée de faire 'ok' sur chaque boite et les passer toutes...


c'est pourquoi je voudrais stopper la saisie à tout moment...


Sub saisie()
'deprotege la feuille
Sheets('events').Unprotect

Sheets('temoin').Visible = False ' cache la feuille temoin
Sheets('formulaire').Visible = False


msg = 'Bonjour, vous allez proceder à la saisie d'un evenement!'
Style = vbInformation
Title = 'Saisie de l'evenement'
Réponse = MsgBox(msg, Style, Title)



'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

report_num:
Dim Reponse As String


Reponse = InputBox('Entrez le numero du rapport:') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 2)
maselection.Value = Reponse

If Reponse = Empty Then ' test pour forcer la saisie par l'utilisateur
Reponse = InputBox(' Vous n'avez pas entré de numero! Entrez le numero du rapport')

Set maselection = Application.Worksheets('events').cells(3, 2)
maselection.Value = Reponse
End If


Debug.Print Reponse



'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''


reported_title:


Reponse = InputBox('Entrez le titre du rapport:')

Set maselection = Application.Worksheets('events').cells(3, 3)
maselection.Value = Reponse
If Reponse = Empty Then ' test pour forcer la saisie par l'utilisateur

Reponse = InputBox(' Vous n'avez pas entré de titre! Entrez le titre du rapport') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 3)
maselection.Value = Reponse
End If

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''


author_name:
Reponse = InputBox('Entrez votre nom et prenom:') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 4)
maselection.Value = Reponse
If Reponse = Empty Then

Do Until Reponse <> Empty
Reponse = InputBox(' Vous n'avez rien saisi! Veuillez entrer l'information demandée')
Set maselection = Application.Worksheets('events').cells(3, 4)
maselection.Value = Reponse
Loop

End If

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''


author_number:

Reponse = InputBox('Entrez votre numero de téléphone:') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 5)
maselection.Value = Reponse
If Reponse = Empty Then ' test pour forcer la saisie par l'utilisateur

Reponse = InputBox(' Vous n'avez pas entré de numero! Entrez votre numero de téléphone') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 5)
maselection.Value = Reponse
End If



'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''


author_mail:



Reponse = InputBox('Entrez votre adresse e-mail') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 6)
maselection.Value = Reponse
If Reponse = Empty Then ' test pour forcer la saisie par l'utilisateur

Reponse = InputBox(' Vous n'avez rien saisi! Entrez votre adresse e-mail:') 'affichage de la boite de dialogue

Set maselection = Application.Worksheets('events').cells(3, 6)
maselection.Value = Reponse
End If
😱 😱 :woohoo:
 
😱 😱 re
tu pourrais etre un peu plus explicite stp, je n'ai jamais programmé en VBA et je suis en stage la dessus... :woohoo: comment on procède? je crée un userform, ensuite j'insère un commande button, je double clique dessus et j'insère mon code la... c'est ça??
 
re


alt f11 pour entrer dans vbe

là, tu inseres un USERFORM


Sur le userform tu places des zones de texte (textbox) ça correspond à tes inputbox.

sur chaque textbox tu peux coller un code pour verifier la saisie.

sur ton userform tu places egalement un bouton OK qui ne validera tes données que si tous les textbox sont bien remplis.
 
re

un userform peut occuper la surface de ton écran, il suffit de bien organiser tes données.





une autre solution : saisir dans une feuille excel tes données avec des mfc et validation par un bouton après avoir testé les réponses

Message édité par: dg62, à: 11/07/2005 13:50
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
448
  • Question Question
Réponses
10
Affichages
1 K
K
Réponses
8
Affichages
2 K
kuistau
K
Réponses
1
Affichages
1 K
C
Réponses
3
Affichages
1 K
Retour