[excel] condition d'execution de macro

Résolu
Bonjour,
j'ai dans un tableau Excel une macro affectée à un bouton, mais j'aimerais mettre une condition sur l'execution de cette macro, c'est a dire que lorsqu'un utilisateur clique sur le bouton auquel est affectée la macro, une condition est verifiée et la macro exécutée uniquement si cette condition est vrai. Est ce possible? Si oui merci de m'indiquer comment.

9 réponses

  1. Oui, bien sûr.

    Dans l'Explorateur de Projets VBA, sous le nom des feuilles, tu as ThisWorkbook. Fais un double clic dessus. Dans la droite de l'écran, tu obtiens une fenêtre surmontée de 2 listes déroulantes.

    Dans la liste de gauche, choisis Workbook.
    Dans la liste de droite, tu obtiens tous les événements liés à Workbook. Choisis BeforeClose. Ça te donne le squelette de la macro qui sera exécutée à la fermeture de ton classeur.
    Tu y mets ce que tu veux.

    Et tu peux faire la même chose avec chaque feuille. Ça va t'ouvrir des horizons...
    17
    1. Hello rodrigue62,

      Fais le test de la condition en début de macro, et quitte si elle n'est pas remplie.
      Exemple :
      Sub Macro()
        If Range("A1").Value = 0 Then
          Exit Sub
        End If
        MsgBox "On continue"
      End Sub
      Si on a 0 en A1 la macro s'arrête.
      10
      1. et peut on affecter une macro a la fermeture de Excel, que lorsque je suis sous mon fichier et que j'essaye de fermer Excel, avant de le fermer il m'execute quelques actiopns dont je verrais les effets a la prochaine ouverture.
        7
        1. Merci une fois de plus exactement ce que je voulais. Et coment peut on faire en VBA pour que la derniere commande de ma macro a la fermeture soit qu'il sauvegarde sans me demander si je veux?
          3
          1. hello,

            ' pour empêcher l'affichage du message te demandant si tu veux conserver les modifications qui ont été faites
            Application.DisplayAlerts = False
            ThisWorkbook.Save
            Application.DisplayAlerts = True

            0
        2. Bonjour,
          j'ai un peu me le même genre de probleme. J'aimerai activer une macro a chaque fois que l'on change d'anné.Est ce possible?Si oui merci de m'indiquer comment.
          2
          1. ok merci Armojax c'est exactement ce que je voulais faire ca marche impec ton truc.
            1
            1. Merci beaucoup pour votre aide
              0
              1. convertir un nombre en lettres exemple 1458 Mille Quatre Cent Soixante Huit
                0
                1. bjr ! quelle est la formule exacte pour ces conditions : X est proposable au grade de Major si X est adjudant-chef depuis 05 ans et si X a au moins 47 ans d'age. Aidez moi cela me rendrait énormément de service pour mon boulot.Merci
                  0