编辑:解决了!!暂时还不能提出解决方案。
我有一个带有“日期”行字段的数据透视表。我需要一个从最旧日期到最新日期排序的 VBA 代码。
我需要日期为 AUS 格式,即。dd/mm/yyyy 或 d mmm yyyy 或类似。这是 Excel 无法正确排序它们的时候。
因此,假设枢轴字段“日期”具有以下枢轴项:
01 Jan 2012
30 Apr 2012
(blank)
03 Feb 2013
14 Feb 2012
22 Nov 2012
正确的顺序是:
01 Jan 2012
14 Feb 2012
30 Apr 2012
22 Nov 2012
03 Feb 2013
(blank)
我想我越来越近了,但仍然没有运气。
Dim pi As PivotItem
Dim pfd As PivotField
Dim pt As PivotTable
Set pfd = pt.PivotFields("Snapshot Date")
For Each pi In pfd.PivotItems
pi = CDate(pi) 'converts to US date for sorting
Next pi
pfd.AutoSort _
xlAscending, "Snapshot Date"
For Each pi In pfd.PivotItems
pi = Format(pi, "d mmm yyyy") 'converts to AUS
Next pi
谢谢你的帮助。分枝