Vider le contenu d'une cellule excel à la fer

Résolu
lola -  
 lola -
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

17 réponses

jjsteing Messages postés 1803 Statut Contributeur 181
 
bonjour :)

Private Sub Workbook_BeforeClose()
Range("C5").value=""
End Sub
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonour,
Manque une ligne
Private Sub Workbook_BeforeClose()
     Range("C5").ClearContents
    ThisWorkbook.Save
End Sub

A+
0
jjsteing Messages postés 1803 Statut Contributeur 181
 
bien vu l'ermite ;).. faut sauver apres ;)
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Quand tu a ta réponse, en tant que membre tu peu metrre ton topic en RESOLU..
A+
0
lola
 
je vous remercie beaucoup je vais essayé vos codes et je vous dirai si ça marche!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lola
 
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
jjsteing Messages postés 1803 Statut Contributeur 181
 
ah non, il faut le mettre dans :

Private Sub Workbook_BeforeClose(Cancel As Boolean)

End Sub


come te l a mis lermite ;)
0
lola
 
oui je l'ai bien mis làbas mais il ne marche pas!
0
lola
 
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
jjsteing Messages postés 1803 Statut Contributeur 181
 
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
jjsteing Messages postés 1803 Statut Contributeur 181
 
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
lola
 
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
jjsteing Messages postés 1803 Statut Contributeur 181
 
si tu le mettais bien dans Workbook_BeforeClose.. il te poserais meme pas la question ;) cf post 12 (https://forums.commentcamarche.net/forum/affich-13630503-vider-le-contenu-d-une-cellule-excel-a-la-fer#12)
0
lola
 
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
lola
 
pourtant c'est ladans, je ne comprend pas pourquoi ça ne marche pas
0
lola
 
ah oui?
fallait me le dire que c'était dans (thiswokbook) je vais essayé alors
merci
0
lola
 
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
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
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
lola
 
ouais franchement merci bcp! ça marche super bien
0