【发布时间】:2018-06-17 05:29:05
【问题描述】:
我使用 Apache POI 生成了一个包含 6 张工作表的工作簿,其中 3 张带有数据透视表,其余 3 张是这些数据透视表的数据源。
Sheet 1 -> Data1
Sheet 2 -> PivotTable_Data1
Sheet 3 -> Data2
Sheet 4 -> PivotTable_Data2
Sheet 5 -> Data3
Sheet 6 -> PivotTable_Data3
带有“数据透视表”的工作表名称包含数据透视表。
我需要隐藏数据表,以便生成的工作簿只显示数据透视表,用户可以随意取消隐藏数据表。
我使用下面的代码来隐藏工作表。
workbook.setSheetVisibility(workbook.getSheetIndex(sheet),SheetVisibility.HIDDEN);
无论我如何尝试,我都无法单独隐藏工作表 1,这与工作表 3 和工作表 5 配合得很好。
我认为这可能是因为活动工作表无法隐藏。考虑到这一点,我尝试将工作表 2 设置为选定工作表/活动选项卡,但这破坏了数据透视表。
我知道SheetVisibility.VERY_HIDDEN,但我确信这会引起用户恐慌,因为它需要启用开发人员模式才能取消隐藏工作表。
我怎样才能做到这一点?
【问题讨论】:
标签: java excel apache-poi