Formen sperren oder freigeben
Manchmal müssen Sie alle Formen in bestimmten Tabellenblättern schützen, um zu verhindern, dass sie durch unerwünschte Situationen zerstört werden. In diesem Fall müssen Sie alle Formen im angegebenen Tabellenblatt sperren.
Manchmal müssen Sie in bestimmten geschützten Tabellenblättern bestimmte Formen bearbeiten können. In diesem Fall müssen Sie diese Formen freischalten.
Dieser Artikel wird ausführlich einführen, wie man bestimmte Formen sperrt und freischaltet.
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); |