Bouton RAZ AVEC CONFIRMATION "OUI NON"

Résolu
Bonjour a vous tous,

je suis nouveau sur ce forum, et novice en VBA et en suivant vos conseils avisés sur le sujet j'ai fais mon bouton RAZ et s'il est possible pourrais je lui adjoindre et comment la possibilité de demander confirmation avec la validation oui ou non pour éviter une fausse manip
excel 2007
Merci à vous de votre réponse

Cordialement

Claude

8 réponses

  1. Contributeur
    Bonjour,

    Par exemple, ajouter cette ligne en début de procédure :
    If InputBox("Confirmez-vous ?", , vbYesNo) = vbNo Then Exit Sub

    eric
    3
    1. Bonjour Eriiic,

      merci pour ta réponse je ne comprend pas le sens de ta phrase en fin de mail (En plus du merci (si si, ça se fait !!!), ) vu que je l'avais fait sur mon message.
      Bon pas grave, cela fonctionne c'est parfait, j'ai oublier hier un petit truc, en fait je m'en suis rendu compte après, je crée un bouton raz pour vider trois colonnes, (deux avec des sommes une avec des dates) le soucis
      0
      1. Pardon erreur de manip, je cherchais pour joindre un tableau excel, mais raté

        Pour résumer, une cellule au format (aujourd'hui()) et deux colonnes dans lesquelles je rentre des sommes avec une cellule total au bas de chacune, un bouton valider qui me renvoie le tout sur un tableau a coté Pour un total annuel
        Un bouton raz pour la remise a zéro du tableau journalier
        un autre bouton raz pour la remise à zéro annuel

        27 janvier 2014 22540 24500 29 janvier 2014
        27 janvier 2014 22540 24500
        28 janvier 2014 22540 24500
        29 janvier 2014 4912 3519 600 5I41
        250 521
        541 951
        3000 852
        521 654
        0 0
        0 0
        0 0
        0 0
        0 0
        4912 3519

        Mon souci comment écrire pour la colonne date remise a zéro et retour a la cellule d'origine
        Je ne sais pas si je suis clair, si le petit bout de tableau si dessus ne bouge pas cela pourrait peut être aider

        Voici le code du bouton valider
        Private Sub CommandButton1_Click()
        Dim derl As Single
        derl = Range("b10000").End(xlUp).Row + 1
        Range("B" & derl) = CDate(Range("G3"))
        Range("D" & derl) = Range("G16").Value
        Range("E" & derl) = Range("J16").Value

        End Sub

        celui que j'avais commencer a écrire pour le bouton raz annuel

        Private Sub CommandButton3_Click()
        Range("D1:D277,E1:E277") = 0
        End Sub

        il me manque donc la ligne pour remettre a zéro en B3

        Merci d'avoir pris le temps de me lire et encore pour ta lumière
        Cordialement

        Claude
        0
        1. Contributeur
          Bonjour,

          je ne comprend pas le sens de ta phrase en fin de mail

          C'est ma signature qui apparait en bas de chacune de mes réponse.

          Private Sub CommandButton3_Click()
          Range("D1:D277,E1:E277") = 0
          End Sub

          J'aurais plutôt mis :
          Range("D1:D277,E1:E277") = ""
          ou
          Range("D1:D277,E1:E277").clearcontents

          Mon souci comment écrire pour la colonne date remise a zéro et retour a la cellule d'origine
          Si j'ai bien compris :
          [A:A].clearcontents
          [A1].select

          cjoint.com pour déposer le fichier xls, et coller ici le lien fourni.

          eric
          0
          1. Bravo, en changeant juste colonne B en place de A cela fonctionne à merveille , juste une dernière question 'je pense) l'enregistrement ce fait sur les ligne B2 à 277 idem pour D et E

            Private Sub CommandButton1_Click()
            Dim derl As Single
            derl = Range("b10000").End(xlUp).Row + 1
            Range("B" & derl) = CDate(Range("G3"))
            Range("D" & derl) = Range("G16").Value
            Range("E" & derl) = Range("J16").Value

            End Sub

            pour Démarrer en ligne 6, j'ai essayé

            Range("B6" & derl) = CDate(Range("G3"))
            Range("D6" & derl) = Range("G16").Value
            Range("E6" & derl) = Range("J16").Value

            et la fonction ne répond plus, ou est mon probleme ?

            Merci de ta patience

            Cordialement
            Claude
            0
            1. Contributeur
              Range("B6" & derl) n'est pas correct.
              Le & sert à concaténer (mettre bout à bout) 2 chaines de caractères.
              Si derl= 9000 => Range("B69000") qui n'est pas la cellule souhaitée.

              Pour décaler mettre :
              Range("B" & derl + 5)

              Mais là on commence à discuter un peu dans le vent, il ne faut pas hésiter à déposer un fichier que ce soit plus concret.
              eric
              0
          2. Bonjour Eric,

            considérons le fichier résolu, mais avant de le classer il me reste une question à te poser,
            en I 2 un solde, après des ajouts à celui-ci le résultat en I 63
            Je voudrais "avec ton aide" réaliser un bouton RAZ De la colonne I5:I62, mais écrire I63 somme de I5:I62, le solde en I2

            autre chose comment fais tu pour enserrer un fichier dans le message

            Merci encore de ton aide

            Cordialement

            Claude
            0
            1. Contributeur
              Bonjour,

              comment fais tu pour enserrer un fichier dans le message
              C'était déjà écrit au post 4

              eric
              0
          3. https://www.cjoint.com/?3Bcn43yROX9

            j'avais fais une erreur, j'avais écrit cijoint et ne comprenais pas la chose proposée
            Pardon
            voici
            le lien
            merci de ta compréhension

            claude
            0
            1. Contributeur
              Bonjour,

              Je voudrais "avec ton aide" réaliser un bouton RAZ De la colonne I5:I62, mais écrire I63 somme de I5:I62, le solde en I2
              J'ai déjà répondu pour la RAZ...
              Maintenant il faut choisir. Ton solde est où ?
              Si c'est I63, dans ta macro tu mets Range("I2")=Range("I63")
              Mais ça fait parti du B.A.BA d'excel que tu es sensé connaitre ou bien que tu trouves facilement par une recherche. Il ne faut pas exagérer...

              eric
              0
          4. Bonjour Eric,

            Désolé de t'importuner, je suis à la retraite et je n'ai jamais eut de cours sur le b a ba d'excel, je me forme seul sur quelques fichiers que je fais dans le cas de gestion bénévole d'une copropriété

            donc nous en resterons là et considérons le sujet résolu
            pour info sur le tableau le total à transférer était I9 en I2 )

            Merci quand même

            Cordialement
            Claude
            0
            1. Contributeur
              Dans le post précédent tu parlais de I63, mais bon, tu as adapté.

              je n'ai jamais eut de cours sur le b a ba d'excel

              Tout s'apprend, ce n'est pas inné je te l'accorde.
              Tu as fait le choix de faire du vba, c'est très bien. Mais il faut essayer de comprendre au fur et à mesure. Recopier des lignes de code sans comprendre n'avance à rien. Tu en es d'accord je pense.
              Tu as déjà plusieurs lignes dans ton code style :
              Range("B" & derl) = CDate(Range("G3"))
              Range("D" & derl) = Range("G16").Value
              Range("E" & derl) = Range("J16").Value

              Tu comprends peut-être maintenant pourquoi je trouvais ta question exagérée.

              Surtout que ça ne te rebute pas et poursuis dans ton apprentissage. Sans oublier qu'une recherche préalable te fera gagner beaucoup de temps.

              Qcq liens qui pourront t'intéresser :
              VBE (l'éditeur de VBA): https://www.commentcamarche.net/faq/37089-vba-premiers-pas-dans-l-editeur-microsoft-visual-basic-for-applications
              Cathy Astuce - Cours VBA : http://www.cathyastuce.com/index.php?tg=topusr&cat=4
              Cathy Astuce - Excel_VBA_memento.pdf : https://www.excel-exercice.com/?tg=fileman&id=1&gr=Y&path=Exercices%2FFICHES&idf=55&file=Excel_VBA_memento.pdf&idx=viewFile
              Aide-mémoire minimal de VBA pour excel : http://www2.agroparistech.fr/mmip/mc/bazar/envoi-tele.php?nom_fichier=vba-minimal.pdf
              VBA Excel - Cours complet (developpez.com) : https://bidou.developpez.com/article/VBA/

              A une prochaine question.
              eric
              0
            2. Merci j'ai jais fonctionner ce matin en bidouillant un de tes morceaux de code
              (Range("I10")=(Range("I1")
              Tout est parfait

              en réponse sur la recherche, j'en fait mais comme ne sachant pas bien expliquer ce que je recherche, j'ai du mal a trouver une réponse

              cordialement

              Claude
              0