XL 2010 Supprimer lignes vides dans validation de données

Orson83

XLDnaute Impliqué
Bonjour la communauté XLD,
J'aurai besoin de votre aide pour supprimer des lignes vides dans une liste de validation de données (1000 lignes, mais 20 renseignées). Voici la formule :
Code:
=INDIRECT("TabRecap[Locataire]")
Cette formule fait appel à un tableau structuré "TabRecap" dont l'en-tête se nomme "Locataire".
Avez-vous une solution à me proposer ?
Merci pour votre aide.
Je ne pense pas qu'un fichier Excel en PJ soit nécessaire, sinon, je pourrais en fournir un.
PS : je ne peux pas réduire la hauteur de mon TS. De plus, cocher la case "Ignorer les lignes" vides ne fonctionne pas.
Orson83
 
Solution
Bonjour Orson, ToofatBoy, Job,
Un essai en PJ avec :
VB:
Sub SupLigVides()
    Application.ScreenUpdating = False
    Dim Nlig%, N%
    Nlig = [TabRecap].Rows.Count
    For N = Nlig To 1 Step -1
        If [TabRecap[Locataire]].Item(N) = "" Then [TabRecap].ListObject.ListRows(N).Delete
    Next N
End Sub
Je ne pense pas qu'un fichier Excel en PJ soit nécessaire, sinon, je pourrais en fournir un.
Ben si, ça évite d'en recréer un. ;)

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Orson, ToofatBoy, Job,
Un essai en PJ avec :
VB:
Sub SupLigVides()
    Application.ScreenUpdating = False
    Dim Nlig%, N%
    Nlig = [TabRecap].Rows.Count
    For N = Nlig To 1 Step -1
        If [TabRecap[Locataire]].Item(N) = "" Then [TabRecap].ListObject.ListRows(N).Delete
    Next N
End Sub
Je ne pense pas qu'un fichier Excel en PJ soit nécessaire, sinon, je pourrais en fournir un.
Ben si, ça évite d'en recréer un. ;)
 

Pièces jointes

  • SupLigVides.xlsm
    17.4 KB · Affichages: 9

Orson83

XLDnaute Impliqué
Bonjour Orson, ToofatBoy, Job,
Un essai en PJ avec :
VB:
Sub SupLigVides()
    Application.ScreenUpdating = False
    Dim Nlig%, N%
    Nlig = [TabRecap].Rows.Count
    For N = Nlig To 1 Step -1
        If [TabRecap[Locataire]].Item(N) = "" Then [TabRecap].ListObject.ListRows(N).Delete
    Next N
End Sub

Ben si, ça évite d'en recréer un. ;)
@sylvanu,
Désolé de ne pas avoir posté de fichier :(, je le ferai la prochaine fois, promis ;)
Votre solution est parfaite, merci pour cette solution simple et efficace👍
Bonne journée.
Merci également pour l'intervention de @job75 et @TooFatBoy.
 

Orson83

XLDnaute Impliqué
Bonjour Orson, ToofatBoy, Job,
Un essai en PJ avec :
VB:
Sub SupLigVides()
    Application.ScreenUpdating = False
    Dim Nlig%, N%
    Nlig = [TabRecap].Rows.Count
    For N = Nlig To 1 Step -1
        If [TabRecap[Locataire]].Item(N) = "" Then [TabRecap].ListObject.ListRows(N).Delete
    Next N
End Sub

Ben si, ça évite d'en recréer un. ;)
@sylvanu,
Y aurait-il quelque chose à modifier en raison de mon dernier message dans le post#14 ?
 

Discussions similaires

Réponses
9
Affichages
306

Statistiques des forums

Discussions
315 096
Messages
2 116 183
Membres
112 677
dernier inscrit
Justine11