VBA - Suppression onglets

Bonjour à tous,

Je suis étudiant en licence Contrôle de gestion. Dans le cadre de mon apprentissage, j'ai créé un fichier de reporting Excel, à l'aide du logiciel MyReport qui extrait des données comptable sous excel. Chaque activité est représenté dans des onglets différents. Je suis confronté à un problème:

J'aimerai créer un bouton permettant de supprimer tous les onglets du classeur, hormis les 4 premièrs; société, choix société, choix critères et la première section du service sélectionné (ma requête MyReport apparaît dans cet onglet).

Le nombre d'onglet est variable selon le service sélectionné. C'est MyReport qui va automatiquement créer un nouvel onglet en fonction de la sélection (choix critères) .

Je vous met le fichier en pj.

Merci d'avance!!

Bonjour

Le bouton est sur la feuille "Choix société"

Sub SuppOnglets()
For Each i In Sheets
On Error Resume Next
i.Visible = True
Next
Application.DisplayAlerts = False
Dim W As Worksheet
For Each W In ActiveWorkbook.Worksheets
If W.Name = ActiveSheet.Name Or W.Name = "Sociétés" Or W.Name = "Choix critères" Or W.Name = "ED160 - MISSION D'ACCOMP EDUC S" Then
Else: W.Delete
End If
Next W
Application.DisplayAlerts = True
End Sub

Cordialement

Bonjour,

Essaye le code suivant :

Sub suppressionOnglets()
    Application.DisplayAlerts = False
    For Each sh In ActiveWorkbook.Worksheets
        If sh.Index > 5 Then
            On Error Resume Next
            sh.Delete
        End If
    Next sh
    Application.DisplayAlerts = True
End Sub

Bonjour

Merci Raja, la macro marche niquel!!!

Amadeus, cela marchait qu'une seule fois parce que le 4 ème onglet se renomme en fonction du service sélectionné.

Merci à tous les 2, ça m'a beaucoup aidé!

A+

Rechercher des sujets similaires à "vba suppression onglets"