VBA créer un total par ligne dans TCD

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Gardien de phare

XLDnaute Accro
Bonjour,

J'ai un TCD qui contient deux colonnes si toutes les modalités d'un segment sont sélectionnées. Je voudrais que lorsqu’il n'y a qu'une colonne, il n'y ait pas de total par ligne. En Vba, mon code ne fonctionne pas correctement : fort temps de latence, apparemment le code calcule plein de choses avant de rendre la main. J'ai trouvé un palliatif en masquant / affichant la colonne qui contient le total des lignes mais ce n'est pas très esthétique. Qu'est-ce que j'ai loupé ?
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Dim Nb1 As Integer, Nb2 As Integer
Nb1 = 0
Nb2 = 0
With ActiveWorkbook.SlicerCaches("Segment_NATCOAGT")
  For i = 1 To .SlicerItems().Count
  If .SlicerItems(i).HasData Then Nb1 = Nb1 + 1
  If .SlicerItems(i).Selected Then Nb2 = Nb2 + 1
  Next
End With
With ActiveSheet
  If Nb1 = 1 Or Nb2 = 1 Then
  .Columns("C").EntireColumn.Hidden = True
  ' Ne fonctionne pas correctement (temps de latence)
  ' ActiveSheet.PivotTables("TCD").RowGrand = False
  Else
  .Columns("C").EntireColumn.Hidden = False
  ' Ne fonctionne pas correctement (temps de latence)
  ' ActiveSheet.PivotTables("TCD").RowGrand = True
  End If
End With
Application.ScreenUpdating = True
End Sub

Fichier en PJ et merci...
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
250
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
79
Réponses
3
Affichages
537
Réponses
0
Affichages
379
Retour