IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ajout d'un message box de confirmation au code [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    septembre 2009
    Messages
    1 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : septembre 2009
    Messages : 1 094
    Points : 477
    Points
    477
    Par défaut Ajout d'un message box de confirmation au code
    Bonjour,

    Je voudrais ajouter un Msgbox à la commande CmdButtonENREGISTRER_Click afin de décider si oui l'enregistrement doit s'exécuter

    ou non pour ne pas le faire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Private Sub CmdButtonENREGISTRER_Click() ' Enregistrer
     
        If Me.TextBoxInsererMontant = "" Then
            MsgBox "Vous n'avez pas renseigné le montant a Partager", vbInformation, "Saisie manquante"
            Me.TextBoxInsererMontant.SetFocus
            Exit Sub
        End If
        If Me.TextBoxDATE_Enregistree Like "##/##/####" And IsDate(TextBoxDATE_Enregistree.Value) Then
            Worksheets("PARTAGE GLOBAL").Range("G5").Value = CDbl(TextBoxInsererMontant.Value)        ''  << ici
            Worksheets("PARTAGE GLOBAL").Range("G4").Value = CDate(TextBoxDATE_Enregistree.Value)     ''  << ici
        Else
     
            MsgBox "Attention, saisissez une date de réception en respectant le format JJ/MM/AAAA.", vbExclamation, "Saisie manquante"
            TextBoxDATE_Enregistree.SetFocus
            Exit Sub
     
            '__________________________________________________________________________
            With ThisWorkbook.Worksheets("PARTAGE GLOBAL").Range("G5")
                .Value = TextBoxInsererMontant.Value
                .NumberFormat = "#,##0"
            End With
        End If
        '__________________________________________________________________________
     
        CmdButtonFERMER_Click
    End Sub
    Avec cet exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub MsgBoxVariable()
     
    Dim réponse As Integer
    réponse = MsgBox("Voulez-vous continuer?", vbQuestion + vbYesNo)
     
      If réponse = vbYes Then
        MsgBox "Oui"
      Else
        MsgBox "Non"
      End If
     
    End Sub
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  2. #2
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    juillet 2012
    Messages
    8 857
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : juillet 2012
    Messages : 8 857
    Points : 81 945
    Points
    81 945
    Billets dans le blog
    15
    Par défaut
    Salut,

    En ajoutant cancel=true, cela devrait être bon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub MsgBoxVariable()
     
    Dim réponse As Integer, Cancel As Boolean
    réponse = MsgBox("Voulez-vous continuer?", vbQuestion + vbYesNo)
     
      If réponse = vbYes Then
        MsgBox "Oui"
     Else
        MsgBox "Non"
        Cancel = True
      End If
     
    End Sub
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  3. #3
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    septembre 2009
    Messages
    1 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : septembre 2009
    Messages : 1 094
    Points : 477
    Points
    477
    Par défaut
    Bonsoir Malick,
    Très heureux de vous rencontrer. Cela fait un long moment.
    Voila comment ai je placé la Sub dans mon code:
    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Private Sub CmdButtonENREGISTRER_Click() ' Enregistrer
    If Me.TextBoxInsererMontant = "" Then
        MsgBox "Vous n'avez pas renseigné le montant a Partager", vbInformation, "Saisie manquante"
        Me.TextBoxInsererMontant.SetFocus
        Exit Sub
    End If
    If Me.TextBoxDATE_Enregistree Like "##/##/####" And IsDate(TextBoxDATE_Enregistree.Value) Then
    Else
        MsgBox "Attention, saisissez une date de réception en respectant le format JJ/MM/AAAA.", vbExclamation, "Saisie manquante"
        TextBoxDATE_Enregistree.SetFocus
        Exit Sub
    End If
    '_____________________________________
    MsgBoxVariable
    '_____________________________________
     
    OP.Range("G4").Value = CDate(TextBoxDATE_Enregistree.Value)
    With OP.Range("G5")
        .Value = CDbl(TextBoxInsererMontant.Value)
        .NumberFormat = "#,##0"
    End With
    Unload Me
    End Sub

    Est ce le lieu indiqué ?
    Je viens de faire un essai en cliquant sur non mais l'enregistrement est parti.

    Nom : USERFORM 20.PNG
Affichages : 107
Taille : 17,9 Ko
    Nom : USERFORM 21.PNG
Affichages : 105
Taille : 14,1 Ko

    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  4. #4
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    juillet 2012
    Messages
    8 857
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : juillet 2012
    Messages : 8 857
    Points : 81 945
    Points
    81 945
    Billets dans le blog
    15
    Par défaut
    Salut,

    Je ne vois pas dans ton code là ou tu l'as intégré ; est-ce le bon code que tu as posté ?
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  5. #5
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    septembre 2009
    Messages
    1 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : septembre 2009
    Messages : 1 094
    Points : 477
    Points
    477
    Par défaut
    Je l'ai appelé dans le code enregistrer
    comme ça
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  6. #6
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    juillet 2012
    Messages
    8 857
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : juillet 2012
    Messages : 8 857
    Points : 81 945
    Points
    81 945
    Billets dans le blog
    15
    Par défaut
    Je pense que la place de l'appel c'est avant End if
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  7. #7
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    septembre 2009
    Messages
    1 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : septembre 2009
    Messages : 1 094
    Points : 477
    Points
    477
    Par défaut
    Citation Envoyé par Malick Voir le message
    Je pense que la place de l'appel c'est avant End if
    Bonjour Malick,
    Je trouve qu'il serait mieux de l'introduire dans le code enregistrer.

    A placer avant "If Me.TextBoxDATE_Enregistree Like "##/##/####"..."

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    '_____________________________________________________________
    Dim rep As Byte
        rep = MsgBox("Voulez vous enregistrer cette fiche", vbOKCancel)
        If rep <> 1 Then Exit Sub
    '______________________________________________________________
    Si vous avez une meilleure solution, merci de me le suggérer.
    Cordialement.
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  8. #8
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    juillet 2012
    Messages
    8 857
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : juillet 2012
    Messages : 8 857
    Points : 81 945
    Points
    81 945
    Billets dans le blog
    15
    Par défaut
    Bonjour,

    n'oublies pas de passer le fil en

    Merci
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Affichage message box ou confirm par le controller
    Par maxeur dans le forum Ruby on Rails
    Réponses: 3
    Dernier message: 04/12/2009, 15h03
  2. Message box de confirmation
    Par lila23 dans le forum GWT et Vaadin
    Réponses: 4
    Dernier message: 09/07/2009, 10h02
  3. Message box de confirmation
    Par midotoon dans le forum ASP.NET
    Réponses: 2
    Dernier message: 03/06/2008, 09h49
  4. Ajout d'une case à cocher dans un message box
    Par Jahjouh dans le forum MFC
    Réponses: 1
    Dernier message: 31/08/2007, 11h46
  5. Requête SQL d'ajout, suppression du message de confirmation ?
    Par Jeff77 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 24/07/2006, 22h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo