excel - 当时在同一张工作表上向下钻取 3 个单独的 OLAP 数据透视表
问题描述
我有一个数据源可以在同一张表 TCSum 上创建 3 个数据透视表。
这 3 个表彼此相邻排列,所有 3 个表在数据透视表字段中都有相同的两行,顺序如下:区域 - 市场。
我不希望 Region 列显示 3 次,所以我在 TCSum 表上隐藏了列 G 和 K。
我希望当我为我的第一个区域单击 A 列中的展开按钮时,它会展开所有 3 个表。
我发现让一张纸上的所有数据透视表在行扩展和折叠方面相互模仿。我在那里尝试了这两种方法,并且在更有效的方法中确实用 4 个不同的条目更新了这一行。
我试过了:
PivotFieldIndex = "Region"
PivotFieldIndex = "[Region]"
PivotFieldIndex = "Market"
PivotFieldIndex = "[Market]"
我尝试了 Region 和 [Region],因为我认为既然这已添加到数据模型中,正确的 PivotFieldIndex 可能需要包含它们。我通过在一个数据模型源和一个常规表源上记录一个宏来得出这个结论。
我还意识到常规数据透视表使用 ShowDetail,而 OLAP 使用 DrilledDown,所以我尝试用 DrilledDown 替换每个 ShowDetail,但没有成功。我将此数据添加到数据模型的原因是第三个数据透视表使用了折扣计数功能。
另一篇文章中的说明提到了带有数据透视表的表格需要在最左边,TCSum 是,但是当我在 Visual Basic 中查看时,我看到 Sheet3(TCSum),所以我也尝试替换
Set wks = wkb.Sheets(1)
和
Set wks = wkb.Sheets(3)
我想为什么不试试
Set wks = wkb.Sheets("TCSum")
当我单击任何行上的展开按钮时,我没有收到任何调试错误,但不幸的是,表 1 展开了。
TCSum 上的 3 个数据透视表被命名为:TCByType、TCAge、TCAffected(如果重要,它具有折扣计数)。
解决方案
推荐阅读
- vba - userForm 禁用其他工作簿
- google-maps - 谷歌地图 API 密钥隐私
- c++ - 在静态函数中返回对象而不是构建它有什么好处?
- javascript - 使用 Javascript 将 html 数据存储在列表中
- java - 在 Swagger API 响应中设置对象列表
- python - 从 Random.choices 函数中获取唯一项目列表
- scala - 玩 framewoerk & scala Future(s) 链。让它更漂亮
- c# - 浏览器尚未使用 ChromiumWebBrowser WPF 在 tabitem 中初始化
- prolog - 如何在文件中使用 op/3
- ios - 如何将 UITextView 嵌入 UITableViewCell 与作为委托的自定义单元格?