Bloccare o sbloccare forme

Proteggere tutte le forme in un foglio di lavoro specificato

Per proteggere tutte le forme in una tabella specificata, utilizza il metodo Worksheet.Protect(type), come mostrato nel seguente codice di esempio.

from aspose.cells import Workbook, FileFormatType,SaveFormat,ProtectionType
text = "This is a test";
workbook = Workbook();
worksheet = workbook.worksheets.get(0);
shape = worksheet.shapes.add_text_box(1, 0, 1, 0, 30, 100);
shape.text = text;
shape = worksheet.shapes.add_rectangle(5, 0, 1, 0, 30, 100);
shape.text = text;
shape = worksheet.shapes.add_button(9, 0, 1, 0, 30, 100);
shape.text = text;
shape = worksheet.shapes.add_oval(13, 0, 1, 0, 50, 100);
shape.text = text;
#Protect all shapes in a specified worksheet
shape.worksheet.protect(ProtectionType.OBJECTS);#Protects the entire worksheet.
#or shape.worksheet.protect(ProtectionType.All);//Protects all shapes in the specified worksheet.
#or worksheet.protect(ProtectionType.Objects);//Protects the entire worksheet.
#or worksheet.protect(ProtectionType.All);//Protects all shapes in the specified worksheet.
workbook.save(r"Locked.xlsx", SaveFormat.XLSX);

Sbloccare forme specificate in un foglio di lavoro protetto

Per sbloccare una forma specificata in una tabella protetta, utilizza shape.is_locked, come mostrato nel seguente codice di esempio.

Nota: shape.is_locked ha significato solo quando la tabella è protetta.

from aspose.cells import Workbook, FileFormatType,SaveFormat,ProtectionType
workbook = Workbook(r"Locked.xlsx")
#Get protected worksheet
worksheet = workbook.worksheets[0]
#Get the specified shape to be unlocked
shape = worksheet.shapes[0]
#Unlock the specified shape
if (not worksheet.protection.allow_editing_object and shape.is_locked):
shape.is_locked = False;
workbook.save(r"UnLocked.xlsx", SaveFormat.XLSX);