2017-01-17 2 views
4

pivot tableVBA Ich kann nicht arbeiten Exists-Methode mit Wörterbuch

Dim memberDic As Object: Set memberDic = CreateObject("Scripting.Dictionary") 
Set memberDic("Team A") = CreateObject("Scripting.Dictionary") 

memberDic("Team A")("Tanaka") = 1 
memberDic("Team A")("Watanabe") = 2 
memberDic("Team A")("Shimizu") = 3 

For Each person In ActiveSheet.PivotTables(fy).PivotFields("name").PivotItems 
    If Not memberDic("Team A").Exists(person.Name) Then 
     'hidden person except Team A 
    End If 
Next person 

Ich möchte Artikel excluse mit Methode existiert. Können Sie mir einen Rat geben?

+3

Sie müssen die Dictionary-Objekte zeigen, wie Sie Ihre instantiate. –

+0

ich postscript in der ersten Zeile in Code. Ist "Scripting Dictionary" eine Ursache? –

+0

Ihr Code funktionierte gut für mich. '//' ist kein gültiger VBA-Kommentar, sondern das einfache Anführungszeichen '' '. –

Antwort

0

Kommentar Formalisierung, die für die Frage gepostet:

den Wert aus der Pivot-Tabelle Trim, so dass die Arbeiten ordnungsgemäß vorhanden:

For Each person In ActiveSheet.PivotTables(fy).PivotFields("name").PivotItems 
    If Not memberDic("Team A").Exists(Trim(person.Name)) Then 
     'hidden person except Team A 
    End If 
Next person