Répéter l'opération dans toutes les feuilles du classeur

kioups

XLDnaute Occasionnel
Bonsoir à tous,

j'ai un tout petit problème de "vocabulaire".

Je veux donc effectuer une macro dans chaque feuille de mon classeur.

Voici la macro :

Code:
Sub supp_lig()
Application.ScreenUpdating = False
[COLOR="Red"]For Each[/COLOR]
Dim i As Long
    For i = [COLOR="Red"]Nbrelignedelafeuille[/COLOR] To 1 Step -1
        If Range("D" & i) <> 8 Then Range("D" & i).EntireRow.Delete:
    Next i
[COLOR="Red"]Next ???[/COLOR]
End Sub

Bon, je pense que c'est un truc du genre "For Each", d'où les trucs en rouge.
Sinon, je sais qu'il existe un truc sous 2007 pour partir de la dernière ligne non vide de la feuille, mais j'ai perdu son nom...

Merci beaucoup !

Kioups
 

ROGER2327

XLDnaute Barbatruc
Re : Répéter l'opération dans toutes les feuilles du classeur

Bonjour kioups
Essayez :
Code:
[COLOR="DarkSlateGray"][B]Sub supp_lig()
Dim s As Worksheet, i As Long
   Application.ScreenUpdating = False
   For Each s In ActiveWorkbook.Sheets
       For i = s.UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
           If s.Range("D" & i) <> 8 Then Range("D" & i).EntireRow.Delete
       Next i
   Next s
   Application.ScreenUpdating = True
End Sub[/B][/COLOR]
C'est fait sous Excel2003. Voyez si ça passe aussi sous Excel2007
ROGER2327
#2129
 

Discussions similaires

Statistiques des forums

Discussions
312 502
Messages
2 089 023
Membres
104 007
dernier inscrit
Monvieux