Excel 2013 首次引入了时间线切片器。它允许您通过选择时间范围(按年、季度、月或日)轻松筛选数据透视表。
它是几乎一个有用的工具,但在商业世界(Excel 的主要市场!)我们通常使用财务期间- 在英国,四月到三月是常见的。
开箱即用,这个时间线切片器似乎不支持财政年度——它只支持日历期间,这意味着它对我的用户毫无用处。如果我向他们展示一个切片器,将 Q1 称为 1 月至 3 月,他们会非常困惑。这对于那些整个职业生涯都将 Q1 称为 4 月至 6 月的人来说是非常不直观的。
我找不到任何方法来设置自定义日期范围,但我在网上读到的任何内容都没有给我明确的答案,即是否存在任何解决方案。
有人可以 a) 向我展示如何做到这一点,或者 b) 提供权威来源说明时间线根本不允许自定义时间段吗?
答案1
我想我已经找到了答案——但遗憾的是这是不可能的。
这Excel MVP Zack Barresse 的 MSDN 博客文章说:
使用时间线就像点击一样简单。查看控件时,您将看到已过滤的范围已着色,每端包含一个垂直省略号,您可以单击并拖动到您想要的位置(如下所示)。此外,您还可以单击控件中显示的任何时间段。
您筛选的数据范围将显示在选择标签区域。太精细或太粗糙?单击更改时间级别,然后会出现一个下拉列表,供您选择年份、季度、月份和日期。 这些是不可定制的。
我有点困惑,为什么微软会发布这个功能,因为它知道 35% 的美国核心用户不使用日历年作为他们的财政年度,包括微软!在世界其他地区,这一数字甚至会更高。维基百科:
对于美国约 65% 的上市公司以及英国及其他国家(澳大利亚、新西兰和日本除外)的大多数大公司来说,财政年度与日历年相同。
答案2
虽然无法更改期间选择中可用的期间,但您可以使用四个按钮和宏来创建自己的自定义季度。首先创建四个宏,每个季度一个,如下所示:
Sub Quarter1()
ActiveWorkbook.SlicerCaches("NativeTimeline_Created_Date").TimelineState. _
SetFilterDateRange "04/01/2015", "06/30/2015"
End Sub
并创建四个按钮,每个季度一个,点击时运行每个宏。然后您必须指示用户点击按钮,而不是使用内置的季度选择器。
答案3
您可以使用这种语法:
ActiveWorkbook.SlicerCaches("NativeTimeline_Timeline1").TimelineState. _
SetFilterDateRange year(startDate)&"/"&month(startdate)&"/"day(startdate), year(endDate)&"/"&month(enddate)&"/"day(enddate)