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 :

Message d'avertissement pour éviter de reinitialisé une feuille de calcul [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 24
    Par défaut Message d'avertissement pour éviter de reinitialisé une feuille de calcul
    Bonsoir
    Je suis débutant en VBA
    En fouinant un peu partout, j'ai réussi à créer une macro qui me réinitialise la feuille de calcul. Mais comme cette ne sera pas utilisé par ma personne, je voudrais en cliquant sur le bouton "fatal" un message d'avertissement du type :
    "ATTENTION!!!!!! vous allez effacez vos données. Etes vous sure de vous...........OUI / NON " Réponse
    Puis un deuxième message : Vous perdrez irrémédiablement vos données....... OUI / NON " Réponse
    Si oui cela enclenche l’effacement
    Si non je sors de ma macro d’effacement.
    Je n'arrive pas à faire ce message et je ne trouve rien la dessus. Quelqu'un pourrait-il m'aider ?
    MERCI A VOUS
    Robby

  2. #2
    Membre émérite Avatar de Nicolas JACQUIN
    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : .
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 556
    Par défaut
    Bonjour, d'après ce que j'ai compris, tu devrais trouver ton bonheur ici

    http://fring.developpez.com/vba/excel/msgbox/

    Bon courage

  3. #3
    Membre émérite Avatar de Nicolas JACQUIN
    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : .
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 556
    Par défaut
    Bonjour,
    J'avais un peu de temps à passer

    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
    Sub effacer_plage()
    Dim rep As Integer
    Application.ScreenUpdating = False
    rep = MsgBox("ATTENTION!!!!!! vous allez effacez vos données. Etes vous sure de vous ?", vbYesNo + vbExclamation + vbDefaultButton2, "Attention")
        If rep = vbNo Then
        MsgBox ("Opération annulée")
            Exit Sub
            End If
        If rep = vbYes Then
                rep = MsgBox("Vous perdrez irrémédiablement vos données !!!!", vbYesNo + vbExclamation + vbDefaultButton2, "Attention")
                If rep = vbNo Then
                MsgBox ("Opération annulée")
                Exit Sub
                End If
                    If rep = vbYes Then
                    ActiveCell.Offset.Clear 'A adapter au besoin voulu
                    MsgBox ("Données effacées")
                    End If
    End If
    End Sub
    A bientôt.

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour Nicolas
    Regarde cette autre manière de traiter ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     Dim insiste As Integer, titi As Byte, msg As String
      insiste = vbYes: titi = 0
      Do While insiste = vbYes And titi < 2
         msg = IIf(titi = 0, "ATTENTION!!!!!! vous allez effacez vos données. Etes vous sure de vous ?", "Vous perdrez irrémédiablement vos données !!!!")
        insiste = MsgBox(msg, vbYesNo + vbExclamation + vbDefaultButton2, "Attention")
        titi = titi + 1
      Loop
      If insiste = vbYes Then ' ..... instructions d'effacement ....
    Amitiés

  5. #5
    Membre émérite Avatar de Nicolas JACQUIN
    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : .
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 556
    Par défaut
    Bonjour Jacques,
    oui c'est beaucoup plus compact, les iff j'ai un peu de mal mais commence à piger, mais si tu veux rajouter MsgBox ("Opération annulée") tu place ou ?
    Merci

  6. #6
    Membre émérite Avatar de Nicolas JACQUIN
    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : .
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2014
    Messages : 556
    Par défaut
    C'est bon, du premier coup

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Dim insiste As Integer, titi As Byte, msg As String
      insiste = vbYes: titi = 0
      Do While insiste = vbYes And titi < 2
         msg = IIf(titi = 0, "ATTENTION!!!!!! vous allez effacez vos données. Etes vous sure de vous ?", "Vous perdrez irrémédiablement vos données !!!!")
        insiste = MsgBox(msg, vbYesNo + vbExclamation + vbDefaultButton2, "Attention")
        titi = titi + 1
        If insiste = vbNo Then MsgBox ("Opération annulée")
      Loop
      If insiste = vbYes Then ActiveCell.Offset.Clear
    Merci Jacques

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

Discussions similaires

  1. Sondage pour la construction d'une feuille de facturation
    Par johnson95 dans le forum Langage
    Réponses: 1
    Dernier message: 03/04/2008, 10h38
  2. Réponses: 2
    Dernier message: 10/09/2007, 16h40
  3. [VBA-E97]Code pour déprotéger une feuille de calcul
    Par blaiso dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 19/04/2007, 11h30
  4. Utiliser un userform pour lire et écrire dans une feuille de calculs
    Par sebi78 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/04/2007, 19h51

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