[VBA/EXCEL2003] Définir cellule dans macro

Résolu
Steve411 -  
 Steve411 -
Bonjour,

Après quelques recherches sur Internet, j'ai réussi à créer une macro qui supprime les lignes vides dans la plage de cellule définie, à savoir, ("A20", "K89") dont voici le code :

Sub Effacer_ligne()
Dim p As Range, i As Long
Set p = ActiveSheet.Range("A3", "D17")
With p
For i = .Rows.Count To 1 Step -1
If Application.CountA(.Rows(i)) = 0 Then _
.Rows(i).EntireRow.Delete 'ICI
Next i
End With
End Sub


A l'heure actuelle, la ligne est supprimée si toute la ligne est vide.. J'aimerai faire en sorte que la ligne soit supprimée si la cellule en colonne A est vide et uniquement pour cette condition. Que faut-il modifier ?

Merci

1 réponse

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonjour,

Avec Application.CountA(.Rows(i)) tu comptes le nombre de cellules non vides sur la ligne, ce n'est pas ce que tu cherches...

on peut alleger un peu ton code :
Dim lig As Long
For lig = 89 To 3 Step -1
    If Cells(lig, 1) = "" Then Rows(lig).Delete
Next lig


eric
0
Steve411
 
Nikel. Merci ;)
0