Formen sperren oder freigeben

Alle Formen in einem bestimmten Tabellenblatt schützen

Verwenden Sie zum Schutz aller Formen in einem bestimmten Tabellenblatt die Worksheet.Protect(type) Methode, wie im folgenden Beispielcode gezeigt.

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);

Bestimmte Formen in einem geschützten Tabellenblatt freischalten

Um eine bestimmte Form in einem geschützten Tabellenblatt freizuschalten, verwenden Sie shape.is_locked, wie im folgenden Beispielcode gezeigt.

Hinweis: shape.is_locked ist nur sinnvoll, wenn das Arbeitsblatt geschützt ist.

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);