Suppression d'1 ligne lorsque =0

  • Initiateur de la discussion Initiateur de la discussion Ole
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

Ole

Guest
Bonjour

Comment faire en sorte que lorsque qu'une cellule de ma ligne est égale à 0, cette ligne ce supprime via une macro SVP ???
 
Salut Ole,

Si ta macro est affectée à un bouton tu peux utiliser un code de ce genre (meme si il y a surement plus court):
Code:
Sub test()
Dim j As Integer, i As Integer

For i = Range('A65536').End(xlUp).Row To 1 Step -1
    For j = 1 To Range('IV1').End(xlToLeft).Column
        If Cells(i, j).Value = '0' Then
            Rows(i).Delete
        End If
    Next j
Next i
End Sub

@+
 
bonjour

sans macro

trier en odre décroissant sur cette colonne
la selectionner

puis Edition Rechercher
Rechercher : 0
cocher cellules entieres

cliquer sur la cellule atteinte
puis appuyer en même temps sur les touches
CTRL , MAJ et VersLeBas

puis Edition Supprimer 'ligne entiere'

cette methode ne fonctionne pas si la colonne en question contient à la fois des nombres positifs et negatifs

A+

Message édité par: Qrieux, à: 07/04/2006 14:25

Message édité par: Qrieux, à: 07/04/2006 15:12
 
Bonjour

dans ton code porcinet tu devrais mettre un exit for après ton rows(i).delete


Sub test()

Dim j As Integer, i As Integer

For i = Range('A65536').End(xlUp).Row To 1 Step -1
   
For j = 1 To Range('IV1').End(xlToLeft).Column
       
If Cells(i, j).Value = 0 Then
            Rows(i).Delete
           
Exit For
       
End If
   
Next j
Next i

End Sub
 
Merci mais ca ne fonctionne pas chez moi

JE c pas si il faut ajuster votre code ??
Mes zéros peuvent se trouver dans les lignes 1673 et 1674 et si c le cas, je veux les supprimer !!

Ca permet bien de faire ca vos codes ??
 
Re

le même détaillé

Sub suprimer()

Dim c
Dim i As Integer 'numéro de ligne

'Je  pars de la cellule A1 je récupères la ligne de la dernière cellule utilisée
'Puis je boucle de cette dernière ligne jusqu'en 1 en remontant
For i = Range('A1').SpecialCells(xlCellTypeLastCell).Row To 1 Step -1

' je cherche un 0 sur la ligne qui s'appelle en variable i mais qui est un nombre
   
Set c = Rows(i).Find(0, lookat:=xlWhole)
   
' si il trouve un 0 il supprime la ligne
   
If Not c Is Nothing Then Rows(i).Delete
   
' ligne précédente
Next i

End Sub
 
en fait, faudrait que si y'ait un zéro dans les cellules G 1673 et G 1674 ca me supprime ces lignes

Par contre si 0 uniquement dans g 1673, la ligne 1674 doit resté
Et si 0 uniquement dans g 1674, la ligne 1673 doit resté
 
Ca marche mais ca me fou en l'air mes calculs

En fait G 1675 est la cellule du total d'un devis qui prend en compte les frais de deplacement (G1674) et les remises (G1673)

Donc si on supprime une de ces lignes, on décale, et la formule ,en G1675 est faussé, vous avez pas une solution ??
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2021 Macro
Réponses
6
Affichages
319
Réponses
4
Affichages
230
Réponses
3
Affichages
171
Réponses
23
Affichages
684
Retour