Sub SuppressionLignesVierges()
Cells.FindNext(After:=ActiveCell).Activate
ActiveCell.Offset(-9, 0).Range("A1").Select
Cells.FindNext(After:=ActiveCell).Activate
ActiveCell.Rows("1:9").EntireRow.Select
Selection.Delete Shift:=xlUp
Selection.FindNext(After:=ActiveCell).Activate
End Sub
Sub supprimeLIGNEVIDE_COL_A()
On Error Resume Next
Range("A1:A" & [A65536].End(xlUp).Row).EntireRow.SpecialCells(xlBlanks).EntireRow.Delete
On Error GoTo 0
End Sub
ou celle-là
Code:
Sub supp_ligne()
'auteur: bhbh
Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
il faudrait que tu explique un peu plus ce que tu cherches à faire.
si je me fie au nom de ta macro la supression de ligne serait plus simple avec ça:
Selection.SpecialCells(xlCellTypeBlanks).Select 'sélection des cellules vides d'un plage de cellule déjà sélectionné
Selection.EntireRow.Delete 'suppression des lignes entières.
Re et merci pour la réponse
a chaque ligne vide trouvé, je dois sélectionner 6 lignes en dessous et les supprimer et cela uniquement sur la colonne A et ce sur toute les lignes de la feuille de calcul, mon code en haut est bon mais il faudrait qu'il tourne en boucle jusqu'à ce qu'il y ait plus de lignes vides.
et toujours en sélectionnant six lignes en dessous bien sur !
merci
voila j'ai pu simplifier un peu le code il sélectionne bien le nombres de lignes a supprimer après la cellule vide.
j'ai besoin que ce code tourne en boucle sur toute la feuille de calcul jusqu'à la dernière ligne vide
Sub SuppressionLignesVierges()
Cells.FindNext(After:=ActiveCell).Activate
ActiveCell.Rows("1:8").EntireRow.Delete
End Sub
Sub SUPPRIM_SIX_LIGNES()
Dim i As Integer
For i = [A65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Range("A" & i)) Then Range("A" & i).Resize(6, 1).EntireRow.Delete
Next
End Sub
bonsoir staple1600 ton code m'efface toute la feuille lol
ceci fonctionne bien en boucle mais je dois arreter la commande avec la touche echap c'est deja mieux que rien !
je joint mon fichier les lignes grisés sont a supprimer avec la macro
Sub SuppressionLignesVierges()
Range("A4:A1500").Select
Cells.FindNext(After:=ActiveCell).Activate
ActiveCell.Rows("1:8").EntireRow.Delete
SuppressionLignesVierges
End Sub
Sub test()
Application.ScreenUpdating = False
For n = Range("A65536").End(xlUp).Row To 1 Step -1
If Range("A" & n) = "" Then
Rows(n & ":" & n + 5).Delete
End If
Next n
Application.ScreenUpdating = True
End Sub
Sub efface_superflu()
For i = [A65000].End(xlUp).Row To 7 Step -1
If Cells(i, 1).Value = "" Then Cells(i - 8, 1).Resize(9, 1).EntireRow.Delete
Next i
End Sub
Re-,
staple, quand tu regarde son fichier, la 1ère cellule vide se trouve sous le titre code (cellules fusionnées), donc le resize ne "resize" pas bien, il faut se décaler de 8 lignes vers le haut, et redimensionner de 9 lignes vers le bas, puis supprimer
enfin, je crois..