Suppression de feuilles à partir de la Nième.

Jérémy86

XLDnaute Nouveau
Bonjour à toutes et à tous,

J'en profite pour me présenter par la même occasion, je fais une pierre deux coups.
Donc, je m'appelle Jérémy, avec un J et un Y, je préfère...j'ai 25 ans, je suis administrateur réseau dans un cabinet d'expertise comptable, et en septembre, je rentre en Licence Développement Web et applications pour terminaux mobiles.

Bon, fini parlé de moi.
_________________________________________________________________

Je tiens à préciser de suite car je commence juste en développement vba, mais que je serais amener à en faire de plus en plus pour simplifier la vie de mes collaborateurs dans leur travail quotidien.

Donc, je me penche actuellement sur un classeur qui servira de matrice.
Elle a pour but de récupérer les données des classeurs spécifiés dans une plage de cellules sur le classeur matrice, avec création de feuilles dites temporaires.
Sauf, que là, ça se complique, je ne sais pas combien de feuilles vont être générées à chaque fois que la macro sera lancée.

Donc pour le moment, j'ai ça pour supprimer des feuilles :

' Supression des feuilles temporaires créées
' Supression de la confirmation de suppression des feuilles
Application.DisplayAlerts = False
Sheets(Array("Feuil1", "Feuil1 (3)")).Delete
Application.DisplayAlerts = True

Avec ce code, cela supprime la feuille portant le nom Feuil1 et celle portant le nom Feuil1 (3). Les noms des feuilles temporaires sont générées en automatique, et pour l'instant, toutes avec Feuil1, mais cela pourra changer.

Je voudrais savoir s'il était possible de supprimer toutes les feuilles à partir de la troisième par exemple, je garderais, une fois la macro exécuté, simplement les deux premières feuilles.

Donc une chose comme :

Sheets(Array(3, 4, *)).Delete

J'espère m'être fait comprendre, si besoin, je réponds à toutes questions.
Merci par avance de votre aide.
 

pierrejean

XLDnaute Barbatruc
Re : Suppression de feuilles à partir de la Nième.

bonjour Jeremy

et bievenue sur XLD

une solution

Code:
Application.DisplayAlerts = False
 for n= sheets.count to 3 step -1
   sheets(n).delete
 next n
Application.DisplayAlerts = True

qui suppose que les feuilles soient restées en place

sinon

Code:
for n=sheets.count to 1 step -1
Application.Displayalerts=false
if n > 2 then sheets("Feuil" & n).delete
Application.Displayalerts=true 
next n
 

Jérémy86

XLDnaute Nouveau
Re : Suppression de feuilles à partir de la Nième.

Merci à vous deux de votre réponse rapide.

C'est parfait, cela fonctionne, et j'ai maintenant cela comme code :

' Suppression des feuilles temporaires créées
' Suppression de la confirmation de suppression des feuilles
' Suppression automatique des feuilles à partir de la 3ième
Application.DisplayAlerts = False
For i = Sheets.Count To 3 Step -1
Sheets(i).Delete
Next i
Application.DisplayAlerts = True

Donc, problème résolu.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 183
dernier inscrit
karelhu35