You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用日期筛选数据透视表时触发Error 1004应用程序定义错误

数据透视表日期筛选触发Error 1004问题

我尝试通过日期筛选数据透视表时,反复触发Error 1004 应用程序定义或对象定义错误,错误指向代码中的这一行:

.PivotFilters.Add Type:=xlDateBetween, Value1:=CLng(startDate), Value2:=CLng(endDate)

我已经用IF语句验证过日期格式正确,但错误依然出现。

相关信息:

  • C2和C3单元格内容:C2为01/01/2024,C3为29/02/2024
  • 数据源日期情况:数据源中"Fecha Desde"列的日期格式为日-月-年,例如29-01-2024、05-02-2024
  • 数据透视表情况:行区域包含"Fecha Desde"字段,值区域包含"Ventas"等字段

相关VBA代码:

Sub CreatePivotTable()

' 省略部分代码...

 ' 从"Deporte"工作表定义起始和结束日期
    Dim startDate As Variant
    Dim endDate As Variant
    startDate = ws_Dest.Range("C2")
    endDate = ws_Dest.Range("C3")

    If IsDate(startDate) And IsDate(endDate) Then

        ' 应用日期筛选
        With ptTable.PivotFields("Fecha Desde") ' 确认这是正确的字段名
            .ClearAllFilters ' 清除现有筛选
            .PivotFilters.Add Type:=xlDateBetween, Value1:=CLng(startDate), Value2:=CLng(endDate)
        End With

    Else
        MsgBox "起始日期或结束日期无效。"
    End If

    ' 刷新数据透视表以应用筛选
    ptTable.RefreshTable

End Sub

生成的数据表示例:

Fecha DesdeSKUVentasDivision
29-01-2024mpm239583000Deporte
05-02-2024mpm387542000Regalos
19-02-2024mpm488324000Deporte
29-01-2024mpm38784300Deporte
19-02-2024mpm28494500Deporte

内容的提问来源于stack exchange,提问作者Francisco Augusto Varela Aguir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 22:55:59