excel - 无法按日期对数据透视表进行排序

标签 excel vba pivot-table

我有一个包含 2 列跨越日期的数据透视表( Create DateTarget Date )。我无法对数据透视表中的任何字段进行排序,但是 我需要能够对日期字段进行排序 .我仔细检查了格式是日期(当更改为数字格式时,显示日期序列和 ISTEXT 显示 FALSE )
下面的字段列表和相关列的照片。底部的照片只是为了说明格式确实是日期。
enter image description here
enter image description here
enter image description here
enter image description here
由于所有字段都显示在行下,这不会排序吗?是否有另一种方法可以使用当前设置对其进行排序?
我对 VBA 解决方案持开放态度,因为我已经有一个由于其他原因循环遍历每个枢轴的宏。

最佳答案

发布评论中发现的内容的快速摘要:

tl;博士:如果您有一个表格形式的数据透视表,则应用于列的排序将仅应用于子分组字段,并且不会对表的所有列进行排序(因此第一列是唯一能够对表的所有行重新排序的字段。

如果您从完全未排序的表开始,并对第一列进行排序,它将重新排序所有列中的所有行,因为所有其他列都是第一列的子列(子列):

未排序的起始数据透视表
unsorted pivot table

第一列排序数据透视表
First column sorted pivot table

随后对第 2 列(在本例中)进行排序,实际上不会改变表,因为 Target Date 中的值已经与 Created Date 中的值一对一地绑定(bind)。因此它们被锁定为为第 1 列选择的排序顺序。

但是,在这种情况下对第三列进行排序确实会改变其余字段的结构,因为任务编号与目标日期之间存在 2 对 1 的关系。您可以从第三列排序中得到的两个版本的表格如下。请注意,正在对目标日期的重复进行排序:

任务编号从大到小排序
Third column sorted largest to smallest pivot table

任务编号从小到大排序
Third column sorted smallest to largest pivot table

关于excel - 无法按日期对数据透视表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51622622/

相关文章:

vba - 从 Access 中以编程方式打开的 Excel 工作表中删除 protected View

database - 使用ADODB.Connection创建一个SQLite数据库

python - 使用 pywin32 的可移植 Python com 服务器

excel - 如何在我的数据透视表中添加加权平均值?

vba - 数据透视表 : Detect When Pivot Field is Collapsed

pivot - BigQuery 透视数据行列

c# - 导出DataGridView数据到excel

java - Apache poi Excel折线图点

excel - VBA 记录集筛选器通配符 'Ending With' 不起作用 - 错误 3001

vba - 想要将变量添加到Format()字符串输出