Frage

Ich bin zum Erzeugen eines Dreh Diagramm in Excel 2002 mit einem Makro, ein Datumsfeld als Chartfilter (die Feldorientierung zu xlPageField Einstellung). Ich mag den Standard ausgewählt Wert dieser Pivotfield auf den letzten Wert im Datumsfeld setzen. Was ist die richtige Syntax für die in VBA zu tun?

War es hilfreich?

Lösung

Können Sie nicht eine Schleife durch alle Elemente für dieses Pagefield? Hier ist für eine Pivot-Tabelle, aber es immer für ein Diagramm arbeiten sollte nicht große Sache sein:

Sub Main()
    Dim pvt As PivotTable
    Dim fld As PivotField
    Dim itm As PivotItem
    Dim m As Variant

    Set pvt = Worksheets(1).PivotTables(1)
    Set fld = pvt.PageFields(1)

    m = fld.PivotItems(1)
    For Each itm In fld.PivotItems
        If itm.Value > m Then m = itm.Value
    Next itm

    fld.CurrentPage = m
End Sub

Andere Tipps

Sie nicht nur wählen Sie die Zelle, nachdem Sie dynamisch das Diagramm erstellt haben?

So etwas wie:

Dim value As Date
value = "1-apr-09"
Dim row As Integer
row = 0

Dim keeplooping As Boolean
keeplooping = True
While (keeplooping)
    row = row + 1
    If Range("B" & row).value = value Then
        keeplooping = False
        Range("B" & row).Select
        MsgBox ("found it")
    ElseIf Range("B" & row).value = "" Then
        keeplooping = False
        MsgBox ("Not found")
    End If
Wend

ChartObject- .PivotLayout.PivotTable.PivotFields ( " Feldname "). Current = " fieldvalue "

Das ist von Excel 2003, aber ich nehme an 2002 wird ähnlich sein

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top