XL 2013 Supprimer toutes les lignes tableau au dessous du total général

Chrystel01

XLDnaute Occasionnel
Bonjour,

J'utilise un modèle tableau alimenté par macro avec des enregistrements.
Les données de cette zone tableau sont effacées au départ puis la zone est alimentée par des nouveaux enregistrements.
La zone est donc flexible avec plus ou moins de lignes
Le format tableau va s'étendre si on a de nouveaux enregistrements mais il ne s'efface pas quand j'ai moins de lignes.
Je cherche comment adapter le format tableau sur les seules lignes alimentées par les données.
Une option pourrait être de supprimer les lignes au dessous du total général mais j'ai du mal à faire le code VBA.
Pourriez-vous m'aider svp ?
Merci d'avance

Chrystel
 

Pièces jointes

  • Doc1.xlsx
    9.7 KB · Affichages: 8

Chrystel01

XLDnaute Occasionnel
Merci pour vos réponses. C'est toujours aussi rapide :) Désolée du retard de réponse, je n'avais pas reçu de notification.
Merci Staple 1600 pour toutes tes propositions. Elles me seront utiles dans d'autres situations car ce que je cherche dans le cas présent, c'est à supprimer les lignes sous le total et pas au-dessus.
Je vais reprendre la poposition de Shinozak.
Bonne journée
 

Staple1600

XLDnaute Barbatruc
Re

Et donc pour effacer les lignes en dessous d'un Tableau
(avec l"option: Lignes des totaux cochée)
VB:
Sub Suppr_Lignes_LO()
Dim Dl&, xL As Range, LIGNES_A_EFFACER As Range
'ici le tableau s'appelle Tableau1 -< adapter si besoin
Set xL = ActiveSheet.ListObjects("Tableau1").TotalsRowRange
Dl = Cells(Rows.Count, 1).End(3).Row
If xL.Row = Dl Then
Set LIGNES_A_EFFACER = Range(xL.Offset(1), xL.Offset(1).End(xlDown))
Else
Set LIGNES_A_EFFACER = Range(xL.Offset(1), Cells(Rows.Count, 1).End(3))
End If
''NB: le tableau commence en colonne A
LIGNES_A_EFFACER.EntireRow.Clear
End Sub
 

Discussions similaires

Réponses
2
Affichages
594

Statistiques des forums

Discussions
312 193
Messages
2 086 059
Membres
103 110
dernier inscrit
Privé