Workbook_BeforeClose efface toutes les feuilles au lieu de celles spécifiées???

Le
bpascal123
Bonjour,

Le script ci-dessous efface également le contenu de la feuille 2. Comment=
ça se fait?

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ThisWorkbook.Worksheets(1).Cells.ClearContents
ThisWorkbook.Worksheets(3).Cells.ClearContents
ThisWorkbook.Worksheets(4).Cells.ClearContents

ThisWorkbook.Save

End Sub

Merci pour votre aide

Pascal
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
bpascal123
Le #26099512
Si j'écris le nom de la feuille,
ex. sheet("feuil1")... "feuil3"... la feuille 2 sera épargnée

Pourtant mes feuilles comme collection objets dans la fenêtre apparaîss ent dans l'ordrer 1,2,3,4, alors si le script est sheet(1), sheet(3), sheet (4), la feuille 2 ne devraît pas être concernée?
max-75
Le #26099562
Le mercredi 23 avril 2014 17:49:57 UTC+2, bpascal123 a écrit :
Si j'écris le nom de la feuille,

ex. sheet("feuil1")... "feuil3"... la feuille 2 sera épargnée



Pourtant mes feuilles comme collection objets dans la fenêtre apparaî ssent dans l'ordrer 1,2,3,4, alors si le script est sheet(1), sheet(3), she et(4), la feuille 2 ne devraît pas être concernée?



bonjour,
Pour moi, avec le script ci-dessus, la feuille 2 est épargnée...

cdt

Max
MichD
Le #26099552
Bonjour,

Quand tu observes le nom des objets "Feuille" de ton projetVBA
dans l'arborescence des objets de ton projetVBA dans la petite
fenêtre du haut à gauche de la fenêtre de l'éditeur de code,

Les objets feuilles sont définis de cette manière :

Sheet1(toto)
Sheet2(titi)
Sheet3(bozo)

Sheet1 et la valeur de la propriété "NAME" de l'objet "Feuille"
toto est le nom de l'onglet de la feuille de calcul. Cela est vrai
pour chacune des feuilles.

Au lieu d'utiliser cette syntaxe :
ThisWorkbook.Worksheets(1).Cells.ClearContents
Tu remplaces par :
Sheet1.Cells.ClearContents
Sheet3.Cells.ClearContents
Sheet4.Cells.ClearContents

Si tu travailles sur une version française :

Feuil1.Cells.ClearContents
Feuil3.Cells.ClearContents
Feuil4.Cells.ClearContents

Le fait d'utiliser la propriété "Name" de l'objet feuille au lieu de l'objet
"Name"
te permet d'afficher la liste des méthodes et propriétés des objets dès que
tu tapes le "Point"
après un objet ou une méthode. Cette liste facilite la saisie du code et
empêche les fautes d'orthographe.
bpascal123
Le #26099752
plein de sens,
merci
Publicité
Poster une réponse
Anonyme