是否可以使用phpexcel隐藏excel表?

Per*_*ack 7 php phpexcel

我正在生成一个excel模板,我正在使用4张,其中3张只用于存储数组中的数据.这些数据正在数据验证列表中使用,因此我将保护添加到仅用于存储数据的3张纸上,但我想知道是否可以隐藏它们,以便用户在下载模板时,将无法看到这些表格,他不需要知道存在.

可能吗?

Mar*_*ker 11

$objPHPExcel->getSheetByName('Worksheet 1')
    ->setSheetState(PHPExcel_Worksheet::SHEETSTATE_HIDDEN);
Run Code Online (Sandbox Code Playgroud)

要么

$objPHPExcel->getSheetByName('Worksheet 1')
    ->setSheetState(PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN);
Run Code Online (Sandbox Code Playgroud)

编辑

您可以使用Excel的格式/工作表/隐藏来隐藏整个工作表.这会将工作表的可见属性设置为xlSheetHidden.但除非您使用密码保护工作簿结构,否则任何人都可以选择"格式化/工作表/取消隐藏"以查看隐藏的工作表.

如果您使用Excel 97或更高版本,那么您可以"非常隐藏"工作表:

  • 按Alt-F11以显示Visual Basic编辑器
  • 在"项目"窗口中,双击"Microsoft Excel对象"并选择要隐藏的工作表.
  • 按F4显示"属性"框
  • 将工作表的Visible属性设置为xlSheetVeryHidden.

现在无法再通过Format/Sheet/Unhide访问工作表

当您将SheetState设置为VERYHIDDEN时,这就是PHPExcel更简单的功能