fineui 如何做网站,网页设计培训主要经营范围,最新做做网站,滨州网站建设模板建设也没什么可分析的#xff0c;直接上代码#xff0c;看看是不是你需要的#xff1a;
Sub GetPVT()
定义一个1000行的数组#xff0c;如果你预判工作簿中数据透视表数量可能大小1000#xff0c;那就改成10000#xff0c;甚至10万#xff0c;以确保能大于数据透视表数量即…也没什么可分析的直接上代码看看是不是你需要的
Sub GetPVT()
定义一个1000行的数组如果你预判工作簿中数据透视表数量可能大小1000那就改成10000甚至10万以确保能大于数据透视表数量即可。
Dim arr(1000, 3) as string
i 0
遍历工作簿中的每个工作表
For Each sht In ActiveWorkbook.Worksheets
遍历工作表中的每个数据透视表
For Each pvt In sht.PivotTables
赋值工作表名称、数据透视表名称、数据源
arr(i, 0) sht.Name
arr(i, 1) pvt.name
arr(i, 2) pvt.SourceData
i i 1
Next pvt
Next sht
将数据写到工作表中
Cells(1, 1).Resize(i, 3) arr
End Sub 最后写到将数据写到工作表中没有判断会不会因为粘贴区域有数据透视表面失败建议每次新建一个工作表并将新工作表为活动工作表然后运行代码。