在openpyxl中保护工作簿

时间:2017-07-20 16:29:07

标签: python excel openpyxl

我尝试使用openpyxl保护Excel工作簿。

到目前为止,我查看了不同的,可能相关的类,但我找不到像worksheets那样的set_password方法。

恰好有workbook.protection模块,我试过我的运气。我的代码,归结为绝对相关的最小值如下:

from openpyxl import Workbook
from openpyxl.workbook.protection import WorkbookProtection

wb = Workbook()
wb.security = WorkbookProtection(workbookPassword='0000', revisionsPassword = '0000', lockWindows = True, lockStructure = True, lockRevision = True)
wb.create_sheet("testSheet")
wb.save("test.xlsx")

我没有得到任何错误但也没有任何保护。任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:3)

这在Openpyxl(v2.4.8)中当前不起作用 - 密码不会写入输出文件。有一个公开的PR(https://bitbucket.org/openpyxl/openpyxl/pull-requests/180/read-and-write-workbook-protection/diff),所以希望它将被包含在未来的版本中。