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é ?
Fichier en PJ et merci...
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...