effacer les données à la fermeture du classeur

A

albert

Guest
bonjour à tous,

est-il posible d'écrire un code vba pour effacer les données d'une feuille, sur laquelle on a travaillé, au moment de la fermeture du classeur, de façon à garder une macro qui prenne le moins de place possible ???

merci d'avance
 
@

@Christophe@

Guest
Bonjour albert,

Moi ce que je te propose, au lieu de faire compliqué, crée ton fichier et mets le en lecture seule, puisque c'est le but d'effacé les modif qui ont été apporté, a toi de voir

@Christophe@
 
V

Valérie

Guest
Salut albert, et les autres


Tu peux effectivement placer une macro évenementielle au niveau du classeur avant la fermeture

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Range(...).Clear 'Pour une plage déterminée
Cells.Clear 'Pour toutes les cellules de la feuille

End Sub

Attention Clear EFFACE TOUT sinon utilise ClearContent qui n'EFFACE QUE LE CONTENU

garder une macro qui prenne le moins de place possible ??? shé pas c'que C!!

@ bientôt
Valérie
 
@

@Christophe@

Guest
Bonjour Valerie

Aucun problème Valerie,

Moi personnellement je crois que c'est la meilleur chose, puisque il veut travailler sur une feuille et il veux que en la fermant elle est comme a l'ouverture, alors moi je vois pas mieux.

Ton idée est bonne, aussi, mais dieux sais ou il va effectué des modif. Si il connaissais au moins les plage exact, mais cette macro risque d'être tres longue, surtous si il modif a chaque fois des plage individuel, lol

Alors moi je dis autant ne pas enregistré les modif, et pour empècher cela, lecture seul.

@Christophe@
 
A

albert

Guest
erreur de manip...
je recommence mon msg

...merci Chistophe et Valérie,
ça a l'air de bien marcher :


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cells.ClearContent
End Sub

Sub CopierRendements1Ouvert()
Windows("Rendements1.xls").Activate
Range("A1", Range("AQ1").End(xlDown)).Select
Selection.Copy
Windows("TRANSFERT1.xls").Activate
Range("A1").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Workbooks("Rendements1.xls").Close savechanges:=False
End Sub



"garder une macro qui prenne le moins de place possible ??? shé pas c'que C!!"

...TRANSFERT1.xls=66Ko
Rendements1.xls=22Ko

la quantité de données augmente chaque jour dans une macro source...
si jegarde les informations dans TRANSFERT1 et Rendements1 66 Ko vont devenir rapidement 400, puis 1000Ko... etc... c'est un pb que j'ai déjà rencontré et que j'ai voulu résoudre en nettoyant les feuilles intermédiaires

en tous cas, c'est sympa de répondre aussi rapidement sur des PB qui nous paraissent insolubles, à nous, les débutants

albert
 

Discussions similaires

Réponses
14
Affichages
256

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
314 017
Messages
2 104 584
Membres
109 084
dernier inscrit
mizab