代码之家  ›  专栏  ›  技术社区  ›  kroy2008

如何修复此SlicerCache对象错误?

  •  0
  • kroy2008  · 技术社区  · 6 年前

    错误424“如果不是”行上的“需要对象”。

    Dim dStartDate As Date
    Dim dEndDate As Date
    Dim sDateRange As String
    Dim sDateRange_Num As String
    Dim sDateRangeHeader As String
    
    If Not ActiveWorbook.SlicerCaches("NativeTimeline_Date").FilterCleared = False Then
        dStartDate = ActiveWorkbook.SlicerCaches("NativeTimeline_Date").TimelineState.FilterValue1
        dEndDate = ActiveWorkbook.SlicerCaches("NativeTimeline_Date").TimelineState.FilterValue2
    
        sDateRange = dStartDate & " - " & dEndDate
        sDateRangeHeader = "Reporting Period: " & sDateRange & " (" & dEndDate - dStartDate & " Days)"
        sDateRange_Num = dEndDate - dStartDate
    
    Else
        dStartDate = WorksheetFunction.Min(Range("D1:D100"))
        dEndDate = WorksheetFunction.Max(Range("D1:D100"))
    
        sDateRange = dStartDate & " - " & dEndDate
        sDateRangeHeader = "Reporting Period: " & sDateRange & " (" & dEndDate - dStartDate & " Days)"
        sDateRange_Num = dEndDate - dStartDate
    
    End If
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   QHarr    6 年前

    你需要一个 k 在里面 ActiveWorkbook . 始终使用 Option Explicit

    ActiveWorkbook.SlicerCaches("NativeTimeline_Date").FilterCleared