Python xlsx单元保护(locking)

我需要导出一个列表来优化一些单元格或列保护(只读)。

问题是,我使用openpyxl python模块写入xlsx,但我认为只有xlwt具有单元保护function。 而xlwt似乎不支持xlsx。

任何人都find了解决办法?

最近的Python模块XlxsWriter允许您编写XLSX文件并添加工作表单元格保护(等等):

from xlsxwriter.workbook import Workbook workbook = Workbook('protection.xlsx') worksheet = workbook.add_worksheet() # Create a cell format with protection properties. unlocked = workbook.add_format({'locked': False}) # Format the columns to make the text clearer. worksheet.set_column('A:A', 40) # Turn worksheet protection on. worksheet.protect() # Write a locked and unlocked cell. worksheet.write('A1', 'Cell B1 is locked. It cannot be edited.') worksheet.write('A2', 'Cell B2 is unlocked. It can be edited.') worksheet.write_formula('B1', '=1+2') # Locked by default. worksheet.write_formula('B2', '=1+2', unlocked) workbook.close() 

有关完整的详细信息,请参阅文档的protect()部分。 您可以像往常一样从PyPI下载它,或从GitHub 仓库获取它。

单元保护示例