Excel 在同一工作簿的不同工作表中对结构相似的数据透视表进行排序

Excel 在同一工作簿的不同工作表中对结构相似的数据透视表进行排序,excel,vba,pivot-table,Excel,Vba,Pivot Table,我是一个完全的VBA宏新手,但我正在试图弄清楚VBA宏是什么,它可以对工作簿的所有工作表中的所有透视表进行排序,其中所有透视表都具有相同的结构 所有数据透视表的结构如下: Description | Date 2 months ago | Last Month's Date | This Month's Date A Some Value Some Value Some Value B Some Va

我是一个完全的VBA宏新手,但我正在试图弄清楚VBA宏是什么,它可以对工作簿的所有工作表中的所有透视表进行排序,其中所有透视表都具有相同的结构

所有数据透视表的结构如下:

Description | Date 2 months ago | Last Month's Date | This Month's Date

A               Some Value             Some Value        Some Value
B               Some Value             Some Value        Some Value
.
.
.
Z               Some Value             Some Value        Some Value
我想根据“Last Month's Date”列的降序对每个数据透视表进行排序,该列基本上每月都会根据数据透视表的数据源进行更改

有人能帮我看看这样的VBA代码是什么样子吗

我在这里尝试了解决方案:

还有很多其他的,但总是出错

非常感谢您的帮助!谢谢大家!

更新:在手动执行步骤时,我还录制了一个宏,在VBA中产生了以下结果:

Sub sort_pivot()


ActiveWorkbook.ShowPivotTableFieldList = True
ActiveSheet.PivotTables("PivotTable_Name").PivotFields("Column_1").Orientation _
    = xlHidden
Range("DB12").Select
ActiveSheet.PivotTables("PivotTable_Name").PivotFields("Column_2"). _
    AutoSort xlDescending, "Name of Value", ActiveSheet.PivotTables( _
    "PivotTable_Name").PivotColumnAxis.PivotLines(56), 1
With ActiveSheet.PivotTables("PivotTable_Name").PivotFields("Column_1")
    .Orientation = xlRowField
    .Position = 2
End With
ActiveWorkbook.ShowPivotTableFieldList = False

End Sub
这有几个功能步骤:

  • 从数据透视表字段列表的“行”选择中将列_1删除到 允许排序
  • 在db2cell引用中选择值
  • 根据DB12单元格引用选择按降序对整个表进行排序
  • 将列_1放回数据透视表字段列表中的“行”选择中

  • 链接中的答案有什么问题?@SJR:我一直收到运行时错误“438”:对象不支持此属性或方法