Ячейки Excel имеют атрибут locked , который включен по умолчанию.Однако этот атрибут вызывается только в том случае, если для атрибута protection листа также установлено значение True
.Если рабочая таблица не защищена, атрибут locked игнорируется.
Поэтому ваш вопрос не лучше всего обозначить как , как сделать ячейки доступными только для чтения .Скорее вопрос как сделать ячейки редактируемыми после защиты листа .
... Вот вы:
from xlwt import Workbook, Worksheet, easyxf
# ...
# Protect worksheet - all cells will be read-only by default
my_worksheet.protect = True # defaults to False
my_worksheet.password = "something_difficult_to_guess"
# Create cell styles for both read-only and editable cells
editable = easyxf("protection: cell_locked false;")
read_only = easyxf("") # "cell_locked true" is default
# Apply your new styles when writing cells
my_worksheet.write(0, 0, "Can't touch this!", read_only)
my_worksheet.write(2, 2, "Erase me :)", editable)
# ...
Стили ячеек (easyxf
class) также полезны для объявления цвета фона, веса шрифта и т. д.
Cheers.