Bonjour,
J'aurai voulu de l'aide concernant un problème que je n'arrive pas à résoudre sur la synchronisation de mes TCD. Mon classeur excel contient une vingtaine de tableaux pour 4 onglets et j'aurai souhaité mettre à jour tous les tableaux à partir du premier. J'ai cherché sur le forum des réponses et j'ai trouvé ce code que j'ai essayé d'adapter au module 1:et ce code sur la feuille 2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 Option Explicit Sub OneForAll() Dim PT_MAIN As PivotTable Dim PT As PivotTable Dim PFN(), PF As Integer, P, I ActiveWorkbook.RefreshAll Set PT_MAIN = ActiveSheet.PivotTables("1") I = 1 For PF = 1 To PT_MAIN.PivotFields("Date").PivotItems.Count If Not PT_MAIN.PivotFields("Date").PivotItems(PF).Visible Then ReDim Preserve PFN(1 To I) PFN(I) = PT_MAIN.PivotFields("Date").PivotItems(PF).Name I = I + 1 End If Next PF On Error GoTo ShowAll I = UBound(PFN) On Error GoTo 0 For Each PT In ActiveSheet.PivotTables If Not PT.Name = PT_MAIN.Name Then With PT PT.PivotFields("Date").EnableMultiplePageItems = True For Each P In PT.PivotFields("Date").PivotItems P.Visible = True Next P If Not I = 0 Then For PF = 1 To I PT.PivotFields("Date").PivotItems(PFN(PF)).Visible = False Next PF End If End With End If Next PT Exit Sub ShowAll: I = 0 Resume Next End SubOr à chaque fois que j'essaye de changer la date sur mon premier tableaux une erreur intervient et je n'arrive pas à savoir pourquoi !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, [B1]) Is Nothing Then OneForAll End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub
Merci d'avance et ci-joint mon fichier test.
Partager