Защитите файл Excel с помощью PHPExcel

Как создать защищенный паролем лист excel с помощью PHPExcel, я знаю, как защитить листы Excel, используя

$G=$objPHPExcel->setActiveSheetIndex(0); $G->getProtection()->setSheet(true); 

Но я не получаю никакой ссылки, как установить пароль для редактирования только защиты, означает, что пользователь может открыть файл без пароля, но не может удалить защиту с листа, которую можно легко сделать любым из меню «Данные». Предложения приветствуются.

Для Excel2007 Только для Writer:

Установите защиту рабочей книги:

 $objPHPExcel->getSecurity()->setLockWindows(true); $objPHPExcel->getSecurity()->setLockStructure(true); $objPHPExcel->getSecurity()->setWorkbookPassword('secret'); 

Настройка безопасности рабочего листа:

 $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); $objPHPExcel->getActiveSheet()->getProtection()->setSort(true); $objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); $objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); $objPHPExcel->getActiveSheet()->getProtection()->setPassword('password'); 

В то время PHPExcel не поддерживает защиту листов паролем.

Попробуйте эти параметры, которые не упоминаются в документации.

 $objPHPExcel->getActiveSheet()->getProtection()->setSelectLockedCells(true); $objPHPExcel->getActiveSheet()->getProtection()->setSelectUnlockedCells(true); $objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); $objPHPExcel->getActiveSheet()->getProtection()->setFormatRows(true); $objPHPExcel->getActiveSheet()->getProtection()->setInsertColumns(true); $objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); $objPHPExcel->getActiveSheet()->getProtection()->setInsertHyperlinks(true); $objPHPExcel->getActiveSheet()->getProtection()->setDeleteColumns(true); $objPHPExcel->getActiveSheet()->getProtection()->setDeleteRows(true); $objPHPExcel->getActiveSheet()->getProtection()->setSort(true); $objPHPExcel->getActiveSheet()->getProtection()->setAutofilter(true); $objPHPExcel->getActiveSheet()->getProtection()->setObjects(true); $objPHPExcel->getActiveSheet()->getProtection()->setScenarios(true); $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); $objPHPExcel->getActiveSheet()->getProtection()->setPassword('password');