我试图使用以下公式在数据表中对一组可见单元格求和:
=SUMPRODUCT(SUBTOTAL(109,OFFSET(C2:C6,ROW(C2:C6)-MIN(ROW(C2:C6)),,1,1))*(A2:A6="peter")*(B2:B6=201104))
由于我的仪表板有一个巨大的后端数据集(170k),当我使用这个公式时,仪表板会冻结(我必须在每个我希望在前端显示的表上使用它)。
有没有办法优化这个?或者也许是使用索引和匹配的更快的方法。
答案 0 :(得分:0)
如果将数据复制到另一个工作表,它将完美运行。启用包含所有列的新数据透视表。因此,在数据表中过滤数据时,复制的工作表将仅包含过滤的值。
数据透视表现在只获取复制的数据(即过滤后的数据)。完成后,您需要在vba中添加一行代码:
worksheets("Summary").pivottables("summary_view").pivotcache.refresh
并自动更新数据透视表。因此,当您使用列表框过滤工作表中的数据时,数据透视表会自动更新