Excel 2013.我有数据透视表,根据数据行增长和缩小。例如, 1.对于Row标签,我列出了所有产品 2.对于Column标签,我有制造商列表 3.对于值,我对制造商的计数为1。这将告诉我有多少制造商生产相同的产品。
因此,产品列表(行)增长,制造商列表(列)也会扩展。
我的问题:有没有办法获得数据透视的范围,例如,如果数据透视表从A1开始,有10个产品和10个制造商,那么数据透视表的范围将是$ A $ 1:$ K $ 12(没有行的总计或列的总计)。
是否有快速提取范围$ A $ 1:$ K $ 12?
提前谢谢你,
-G。
答案 0 :(得分:1)
我看到你标记了Excel-VBA。
是,如果您可以将范围视为Range(cells(1,1),cells(12,12))
而不是Range("A1:K12")
有一种方法可以计算VBA中的字段项目。
Rcount = Sheets("YOUR SHEET NAME").PivotTables(1).PivotFields("YOUR ROW NAME").PivotItems.Count
Ccount = Sheets("YOUR SHEET NAME").PivotTables(1).PivotFields("YOUR COL NAME").PivotItems.Count
从那里你只需要添加2来补偿额外的行/列
Rcount = Rcount+2
Ccount = Ccount+2
Dim TableRNG as range
Set TableRNG = Range(cells(1,1),cells(Rcount,Ccount))
如果不知道你想要完成什么,我很难再深入了解,我不确定你是否真的要求VBA解决方案。
答案 1 :(得分:0)
要获取不包含过滤条件范围的数据透视表范围(通常在表格上方两行),请使用此代码。这将选择实际的数据透视表范围,并在msg框中输出数据透视表范围的地址。
July