【发布时间】:2014-04-14 10:59:00
【问题描述】:
这是一个烦人的问题。我在 Excel 电子表格中有一个数据透视表,它直接从 SQL 服务器查询中获取数据。
表格的纵轴是客户,横轴是日期。两者都需要正确排序 - 即客户按字母顺序从上到下,日期按日期顺序从左到右。
我已确保 EXcel 将来自 SQL 的数据识别为日期字段。您可以使用手动 A-Z 功能成功对日期进行排序。但我需要使用 VBA 自动完成。
我曾希望(再次希望)在 SQL 查询中使用两个排序参数可以解决问题:
sql = "SELECT * FROM myView ORDER BY Customer, Date"
Set pt = Worksheets("MyReport").PivotTables("MyPivot")
pt.PivotCache.CommandText = sql
pt.RefreshTable
但事实并非如此。
我发现在 Excel 2010 及以后的版本中,有一个方便的 AutoSort 功能可以满足我的需要。但我被 2007 年困住了。有没有办法在两个维度上对我的数据进行排序?
【问题讨论】: