Ger*_*rry 5 excel vba pivot-table
Excel 2013。我有数据透视表,它根据数据行增长和缩小。例如,1. 对于行标签,我有所有产品的列表 2. 对于列标签,我有制造商列表 3. 对于值,我有制造商的计数为 1。这可以告诉我有多少制造商生产相同的产品。
因此,产品列表(行)会增长,制造商列表(列)也会扩展。
我的问题:有没有办法获得数据透视表的范围,例如,如果数据透视表从 A1 开始,有 10 个产品和 10 个制造商,那么数据透视表的范围将是 $A$1:$K$12 (没有行总计或列总计)。
有没有快速提取范围 $A$1:$K$12 的方法?
先感谢您,
G。
小智 2
我看到您标记为 Excel-VBA。
是的,如果您能够将 Range 视为而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
Run Code Online (Sandbox Code Playgroud)
从那里你只需要添加 2 来补偿额外的行/列
Rcount = Rcount+2
Ccount = Ccount+2
Dim TableRNG as range
Set TableRNG = Range(cells(1,1),cells(Rcount,Ccount))
Run Code Online (Sandbox Code Playgroud)
如果不知道您想要完成什么,并且我不确定您是否真的需要 VBA 解决方案,则很难进一步进行。