[VBA] Suppression ligne cellule vide plage !
Résolu
Detsou
Messages postés
4
Statut
Membre
-
melanie1324 Messages postés 1561 Statut Membre -
melanie1324 Messages postés 1561 Statut Membre -
Bonjour,
Tout d'abord, désolé pour le titre pas très compréhensif, je n'avais pas la place nécessaire. Le titre devrait plutôt se nommer ainsi : Supprimer les lignes où se trouve des cellules non-vides, sur une plage prédéfinie.
Voici ce que j'ai pour l'instant :
Pour l'instant, il me supprime seulement les lignes où il trouve un "1" et je voudrais qu'il supprime pour tout nombre >0.
Merci pour votre aide.
EDIT : Au final j'ai trouvé par moi-même. J'ai créé une autre macro permettant de créer une autre colonne avec la fonction NB.SI qui permettait de mettre un 1 ou un 0, au cas où il y avait des nombres >0, et ça me permettait d'avoir une macro plus simple :
Donc voilà, merci quand même !
Tout d'abord, désolé pour le titre pas très compréhensif, je n'avais pas la place nécessaire. Le titre devrait plutôt se nommer ainsi : Supprimer les lignes où se trouve des cellules non-vides, sur une plage prédéfinie.
Voici ce que j'ai pour l'instant :
Sub Macro8() ' ' Macro8 Macro ' Macro enregistrée le 28/07/2011 par f207636 ' i = ActiveSheet.Cells(65535, 22).End(xlUp).Row For k = i To 4 Step -1 j = ActiveSheet.Cells(20, 100).End(xlToLeft).Column For h = j To 20 Step -1 If InStr(1, ActiveSheet.Cells(k, h), "1", 1) > 0 Then Rows(k).Delete Next Next End Sub
Pour l'instant, il me supprime seulement les lignes où il trouve un "1" et je voudrais qu'il supprime pour tout nombre >0.
Merci pour votre aide.
EDIT : Au final j'ai trouvé par moi-même. J'ai créé une autre macro permettant de créer une autre colonne avec la fonction NB.SI qui permettait de mettre un 1 ou un 0, au cas où il y avait des nombres >0, et ça me permettait d'avoir une macro plus simple :
Sub Macro3() For i = Cells(1, 1).CurrentRegion.Rows.Count To 1 Step -1 If Cells(i, 256).Value > 0 Then Cells(i, 1).EntireRow.Delete Next End Sub
Donc voilà, merci quand même !
A voir également:
- [VBA] Suppression ligne cellule vide plage !
- Forcer suppression fichier - Guide
- Partager photos en ligne - Guide
- Aller à la ligne dans une cellule excel - Guide
- Supprimer page word vide - Guide
- Excel compter cellule couleur sans vba - Guide
1 réponse
bonjour,
voici ta solution :
Sub SelectionEtConcatenation()
Dim Plage As Range, Cel As Range
Set Plage =range(cells(1,1),cells(4,100)) 'la macro agira de la cellule de la ligne 1 colonne 1 à la cellule de la ligne 4 à la colonne 100
For Each Cel In Plage 'pour chacune des cellules comprises dans cette plage
If Cel.Value >= 1 Then 'si la valeur de la cellule est >= à 1
Rows(Cel).Delete Shift:=xlUp 'la ligne d ela cellule est supprimée.
End If
Next
End Sub
voici ta solution :
Sub SelectionEtConcatenation()
Dim Plage As Range, Cel As Range
Set Plage =range(cells(1,1),cells(4,100)) 'la macro agira de la cellule de la ligne 1 colonne 1 à la cellule de la ligne 4 à la colonne 100
For Each Cel In Plage 'pour chacune des cellules comprises dans cette plage
If Cel.Value >= 1 Then 'si la valeur de la cellule est >= à 1
Rows(Cel).Delete Shift:=xlUp 'la ligne d ela cellule est supprimée.
End If
Next
End Sub