Pivot Filter und bedingte Formatierung mittels VBA (VBA)

rollendesr, Montag, 20.06.2016, 13:01 (vor 1249 Tagen)

Hallo zusammen,
ich habe mich mal extra hier angemeldet, da ich am Anfang meiner junger VBA Karriere bin ;-)

Ich bräuchte eine kleine Starthilfe, da ich vor einem (für mich) großem Problem stehe.

(1)
Ich habe eine Pivottabelle mit der Filtermöglichkeit "KA". Dieser Wert soll über eine Stelle gefiltert werden. Derzeit sieht mein der Code folgendermaßen aus:

Sub PivAendern()
With Sheets("Test").PivotTables(1)
.PivotFields("KA").CurrentPage = Sheets("Steuerung").[C3].Value
.PivotCache.Refresh
End With
End Sub


Das klappt auch so ganz gut. Nun möchte ich aber, dass wenn in der Zelle C3 ein bestimmter Wert steht (GF), dass der Filter zurückgesetzt wird, also keiner eingestellt ist.
Leider weiß ich nicht wie ich den Code umändern muss.


(2)
Gleichzeitig möchte ich eine bedingte Formatierung erstellen, die in einer Spalte(M:M), Zeile für Zeile überprüft ob in der Zelle A1...An ein Wert ist, wenn ja, dann nichts, wenn nein dann eine Farbe.
Da habe ich leider gar keinen Zugang zu...

Ich hoffe ihr könnt mir weiterhelfen, währenddessen lese ich mich noch weiter in VBA ein :)

Viele Grüße!

Pivot Filter und bedingte Formatierung mittels VBA

Martin Asal @, Montag, 20.06.2016, 14:25 (vor 1249 Tagen) @ rollendesr

Nun möchte ich aber, dass wenn in der Zelle C3 ein bestimmter Wert steht (GF), dass der Filter zurückgesetzt wird, also keiner eingestellt ist.
Leider weiß ich nicht wie ich den Code umändern muss.

Probier mal folgendes:

Sub PivAendern()
    With Sheets("Test").PivotTables(1)
        If Sheets("Steuerung").[C3].Value = "GF" Then
            .PivotFields(1).ClearAllFilters
        Else
            .PivotFields("KA").CurrentPage = Sheets("Steuerung").[C3].Value
            .PivotCache.Refresh
        End If
    End With
End Sub


Martin

Pivot Filter und bedingte Formatierung mittels VBA

rollendesr, Montag, 20.06.2016, 19:11 (vor 1249 Tagen) @ Martin Asal

Hey Martin,
vielen Dank, dass funktioniert perfekt!

Pivot Filter und bedingte Formatierung mittels VBA

Martin Asal @, Montag, 20.06.2016, 14:27 (vor 1249 Tagen) @ rollendesr

Hi,

hier gilt: Eine Frage, ein Thread. Deswegen hier nun eine separate Antwort.

Gleichzeitig möchte ich eine bedingte Formatierung erstellen, die in einer Spalte(M:M), Zeile für Zeile überprüft ob in der Zelle A1...An ein Wert ist, wenn ja, dann nichts, wenn nein dann eine Farbe.

Nagel mich nicht auf den nächsten Satz fest: Eine bedingte Fromatierung geht nicht in Abhängigkeit zu anderen Zellen, sondern immer nur auf die formatierte.

Daher würde ich es ca wie folgt per VBA lösen:

Sub färbe()
Dim Bereich As Range, Zelle As Range
 
Set Bereich = ActiveWorkbook.Worksheets("Tabelle2").Range("A6:A20")
 
For Each Zelle In Bereich
    If IsEmpty(zelle.Value) Then
        zelle.Offset(0, 12).Interior.Color = RGB(128, 128, 128)
    End If
Next
End Sub
 

Martin

Pivot Filter und bedingte Formatierung mittels VBA

rollendesr, Montag, 20.06.2016, 19:11 (vor 1249 Tagen) @ Martin Asal

Moin,
sorry für den Doppelpost.

Ich konnte das bisher nicht ausprobieren. Ich werde morgen mal berichten, von der Logik klingt das aber schlüssig!
Danke dir schon einmal! :-)

So und jetzt werde ich mich nochmal schlauer lesen :)

RSS-Feed dieser Diskussion
powered by my little forum