“Impossible de définir CurrentPage propriété du Champ de la classe” erreur
Je suis en train d'utiliser VBA pour mettre automatiquement à jour le tableau croisé dynamique filtre en fonction de la sélection de l'utilisateur à partir d'une entrée de la cellule. Je crois que tout fonctionne correctement jusqu'à la ligne 11 qui dit "Champ.CurrentPage = NewCat". C'est là que réside le problème. Le code efface mon filtre comme indiqué dans la ligne précédente, mais quand arrive le code lui ordonnant de sélectionner les nouvelles données, j'obtiens le message d'erreur qui indique "erreur d'Exécution 1004. Impossible de définir CurrentPage propriété du Champ de la classe".
Ci-dessous est ce que j'ai jusqu'à présent et je suis juste à la recherche comment réviser la ligne 11 de sorte qu'il sélectionne la nouvelle entrée à utiliser dans le tableau croisé dynamique filtre. J'apprécie toute l'aide que je peux obtenir sur ce. Je suis très nouveau pour vba & ont de la difficulté avec cela depuis bien trop longtemps!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("C3:C4")) Is Nothing Then Exit Sub
Dim pt As PivotTable
Dim Field As PivotField
Dim NewCat As String
Set pt = Worksheets("Pivot").PivotTables("PivotTable1")
Set Field = pt.PivotFields("[Range].[Site].[Site]")
NewCat = Worksheets("Interface").Range("C3").Value
With pt
Field.ClearAllFilters
Field.CurrentPage = NewCat
pt.RefreshTable
End With
End Sub
OriginalL'auteur Robin A | 2016-01-15
Vous devez vous connecter pour publier un commentaire.
La réponse est juste une question de syntaxe.
Si vous modifiez:
:
Il va travailler.
Avis, que je travaille directement avec le
Field
dans leWith Block
.Pour illustrer davantage, si vous le remplacez par la suite, il travaillera ainsi:
Donc, vous avez besoin de travailler directement avec les objets, vous devez qualifier les objets, les propriétés, les méthodes /etc. avec un
.
OriginalL'auteur Scott Holtzman
J'ai utilisé le code suivant et changé les champs nom et plage de valeur:
[1] http://www.ozgrid.com/forum/showthread.php?t=169855
OriginalL'auteur James
Espérant que ce sera utile à quelqu'un qui connaît le même "1004" erreur lors de la tentative de définir la "CurrentPage" propriété du Champ de la classe.
Pour moi, il a finalement travaillé quand j'ai remplacé le "CurrentPage de la propriété" avec "CurrentPageName" en tant que tel:
Mon tableau croisé dynamique ont ce qu'on a appelé "au niveau de la page des filtres":
entrez la description de l'image ici
OriginalL'auteur momo
Retrait de la déclaration de la variable de
NewCat
a fonctionné pour moi. Soit de supprimer la ligne ou en commentaireOption Explicit
est en haut de la page de code, comme il devrait l'être? J'en doute, depuis lors, la variable ne soit pas déclaré. Au lieu de cela, essayez d'utiliserDim NewCat as Variant
et voir si cela fonctionne pour vous. Si elle le fait, cela signifie que leString
type de variable est incorrect pour le type de données qui doivent être transmises à la méthode...OriginalL'auteur Dr V.Srinivasa Rao