TCD excel 2003 qui plante régulièrement

Fab2108

XLDnaute Nouveau
Bonjour,

J'ai un classeur que j'utilise depuis 9 mois pour faire de la facturation.

J'utilise un TCD pour contrôler et calculer l'encours des clients lors d'un paiement "comptoir".

Mon code vba :
Private Sub PCLIENT_AfterUpdate()

Sheets("TCDPAIEMENT").Select
ActiveSheet.PivotTables("PAIEMENT").PivotCache.Refresh

ActiveSheet.PivotTables("PAIEMENT").PivotFields("CLIENT").CurrentPage = _
PCLIENT.Value


With Sheets("TCDPAIEMENT")

'ENCOURS.Value = Application.WorksheetFunction.SumIf(.Range("B:I"), PCLIENT.Value, .Range("I:I")) - Application.WorksheetFunction.SumIf(.Range("B:I"), PCLIENT.Value, .Range("P:p"))
ENCOURS.Value = Application.WorksheetFunction.Sum(.Range("C:C"))

End With

SELECTPFACT.Value = ""

DTPAIEMENT.Value = Now


End Sub

Régulièrement la mise à jour de Current_page par le code vba créer un éléments de page comme si il n'existait pas alors qu'il est présent dans la base de données.
Je suis obligé de supprimer mon TCD, de le recréer à la main (création initial manuel) et je relance mon code sur le même client, le même jour...et ça marche...

Auriez-vous une explication ?
 

Dugenou

XLDnaute Barbatruc
Re : TCD excel 2003 qui plante régulièrement

Bonjour,
Je ne suis pas du tout spécialiste en macros, mais par contre je fais un peu de TCD.
Ce type de pb arrive quand mon champ de page n'était pas sur "tous" mais sur un élément et que je force la page par macro.
Et tu es certain que PCLIENT.value est une valeur qui existe dans ton champ de page ?
 

Dugenou

XLDnaute Barbatruc
Re : TCD excel 2003 qui plante régulièrement

Je veux dire : peut-être repasser par aucun champ de page sélectionné après refresh : du genre

ActiveSheet.....PivotFields("PCLIENT"). _ClearAllFilters

et ensuite seulement on applique la valeur
 

Discussions similaires

Réponses
1
Affichages
1 K
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 523
Messages
2 089 306
Membres
104 119
dernier inscrit
karbone57