Supprimer plusieurs onglets vide en même temps

Bonjour,

Apres recherche, je ne trouve pas la réponse à mon problème c'est pour cela que sollicite votre aide.

J'ai un doc. PDF que je transforme en Excel, le fichier Excel a plusieurs onglet (46 onglets).

1 onglet sur 2 est vide mais renommer :

ex : onglet 1 = tabl1 (colonne remplie); onglet 2 = table 2 ( colonne vide)....

Comment supprimer les onglets vides en 1 manipulation ?

Merci pour votre aide

cordialement

Jud1

Salut,

Tu peux d'abord tester si la feuille est vide, en utilisant la solution fournie ici : https://fr.extendoffice.com/documents/excel/4649-excel-check-if-a-sheet-is-empty.html

Ensuite, si la condition est remplie, tu supprime la feuille avec l'instruction :

Sub supprimerFeuille()
    With Application
        .ScreenUpdating = False
        .DisplayAlerts = False

        ThisWorkbook.Worksheets("NOM DE LA FEUILLE ICI").Delete

        .ScreenUpdating = True
        .DisplayAlerts = False
    End With
End Sub

Bibu

Salut BIbu,

Merci pour ton retour. le code du lien ne fonctionne pas sur ma feuille . pour le code toute les feuilles ne sont pas vide.

Pourtant, je me suis mis sur un onglet vide et j'ai tout supprimer pour être sûr mais ça fonctionne pas….

Ton code aurait pu mettre du grande utilité.

merci encore

jud1

Salut,

Tu dis que le code du lien ne fonctionne pas sur ta feuille, alors que sur la mienne ça fonctionne très bien.

Tu pourrais envoyer une image de l'erreur, la ligne de code sur laquelle l'erreur apparaît, ou même encore mieux, le fichier lui même directement ?

Bibu

Bonjour,
Une petite contribution.
Cdlt.

Public Sub DeleteWorksheets()
Dim wb As Workbook, ws As Worksheet
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set wb = ThisWorkbook
    For Each ws In wb.Worksheets
        If ws.Visible = xlSheetVisible Then
            If ws.UsedRange.Cells.Address = "$A$1" And _
               IsEmpty(ws.Cells(1)) And _
               ws.Shapes.Count = 0 Then
                If wb.Worksheets.Count > 1 Then ws.Delete
            End If
        End If
    Next ws
End Sub

Bonjour,

Tu sélectionnes tous les onglets (en maintenant la touches shift), clic droit et supprimer

Bonne journée

Merci pour vos aides.

Pour vous répondre BIbuNesco, sur mon fichier ça ne marche pas car lors de la transformation du PDF en Excel. les feuilles vides ont la cellule A1 en couleur gris et la colonne A aggrandi(cf onglet : tab8).

Mais vous avez raison pour vos codes bibunesco et jean-Eric. sur un nouveau fichier Excel les codes fonctionne parfaitement

0test.xlsm (51.31 Ko)
Rechercher des sujets similaires à "supprimer onglets vide meme temps"