Vider le contenu d'une cellule excel à la fer

Résolu
Bonjour,
Voilà j'ai un classeur excel avec des macros, sur ma 1ere feuille se trouve dans la cellule C5 un numero etudiant,j'ai une macro qui me permet d'aller chercher le numero etudiant dans ma base de données et le place dans la cellule C5 de ma feuille, en fait je voudrais qu'à chaque fois qu'on ouvre le classeur qu'il n'yait rien dans cette cellule là,parce que lorsque j'enregistre il faut que je j'efface le contenu de la cellule manuellement sinon à l'ouverture du classeur il ya le dernier numero d'etudiant qui a été enregistré. J'aimerai pouvoir ne plus le faire manuellement à chaque fois que je veux fermer mon classeur.est ce que c'est possible? j'ai essayé ce code mais il n'a pas marché:

Private Sub Workbook_BeforeClose()
Range("C5").ClearContents
End Sub

J'ai besoin d'aide! Merci
Configuration: Windows XP Internet Explorer 6.0

17 réponses

  1. Contributeur
    bonjour :)

    Private Sub Workbook_BeforeClose()
    Range("C5").value=""
    End Sub
    0
    1. Contributeur
      Bonour,
      Manque une ligne
      Private Sub Workbook_BeforeClose()
           Range("C5").ClearContents
          ThisWorkbook.Save
      End Sub

      A+
      0
      1. Contributeur
        bien vu l'ermite ;).. faut sauver apres ;)
        0
    2. Contributeur
      Quand tu a ta réponse, en tant que membre tu peu metrre ton topic en RESOLU..
      A+
      0
      1. je vous remercie beaucoup je vais essayé vos codes et je vous dirai si ça marche!
        0
        1. Bonjour, les amis je viens d'essayer les codes mais ça ne marche tjrs pas, quand je ferme mon classeur et que je le réouvre le numero etudiant est toujours dans la cellule C5. ou peu etre que je ne l'ai pas mis là ou il fallait, je l'ai mis dans mon module.
          0
          1. Contributeur
            ah non, il faut le mettre dans :

            Private Sub Workbook_BeforeClose(Cancel As Boolean)

            End Sub

            come te l a mis lermite ;)
            0
            1. oui je l'ai bien mis làbas mais il ne marche pas!
              0
              1. en fait j'ai aussi un userform, je voulais dire que je l'ai mis dans le code mon module et non dans celui du userform, mais j'ai quand meme essayé les deux ça ne marche pas.
                0
                1. Contributeur
                  Ni dans le userform, ni dans le module. !!!!

                  dans Workbook_BeforeClose... dans vb editor, sur la gauche où y a ton projet, t'a tes feuilles xl, ta form et entre les 2 y a "thisWorkbook"..

                  c'est la dedans !
                  0
              2. Contributeur
                Ok, essai ca :

                Private Sub Workbook_BeforeClose()
                Range("C5").ClearContents
                msgbox ("Sauvegarde")
                ThisWorkbook.Save
                End Sub

                Et dis nous si il t affiche bien un message "Sauvegarde" quand tu quitte ta feuille...
                0
                1. euh désolée d'etre aussi nulle,
                  je me suis peu etre mal faite comprendre, en fait c'est un bouton de commande(mais qui se trouve sur ma feuille de classeur pas sur le userform) auquel j'ai affecté une macro qui va me cherché le numero étudiant dans ma base, donc quand je l'exute tout marche bien sauf que avant de fermer mon classeur vous savez la question habituelle(voulez-vous enregistrer les modifications ......) quand je clique sur non le code que vous m'avez passé marche, mais quand je clique oui le num etu est toujours là quand je réouvre mon classeur.
                  0
                  1. oui ça m'affiche bien "sauvegarde", le probleme est que ce n'est pas moi qui vais utiliser ce classeur après, donc j'immagine que l'utilisatuer lui qaund il aura fini de bosser avec il ciquera 'oui' pour l'enregistrement des modifications, ce que je veux en fait c'est que lorsqu'un autre utilisateur voudra se servir du classeur, eh bien qu'il n'y ai pas de numero etudiant dans cette cellule,
                    0
                    1. pourtant c'est ladans, je ne comprend pas pourquoi ça ne marche pas
                      0
                      1. ah oui?
                        fallait me le dire que c'était dans (thiswokbook) je vais essayé alors
                        merci
                        0
                        1. super ça marche!
                          merci bcp ça marche impecablement, quell conne j'ai été j'avais pas compris qu'il fallait le mettre dans "thiswokbook", merci merci .
                          0
                          1. Contributeur
                            Encore mieux ??
                            pour supprimer la demande Sauve puisque de toute façons le classeur serra sauver...
                            Private Sub Workbook_BeforeClose(Cancel As Boolean)
                                Application.DisplayAlerts = False
                                Range("C5").ClearContents
                                ThisWorkbook.Save
                                Application.DisplayAlerts = True
                            End Sub

                            Là t'est tranquille, tu peu dormir sur tes deux oreilles.
                            A+
                            0
                            1. ouais franchement merci bcp! ça marche super bien
                              0