Freigeben über


ExcelScript.WorksheetProtection interface

Stellt den Schutz eines Arbeitsblattobjekts dar.

Hinweise

Beispiele

/**
 * This script pauses the protection of a worksheet by using the provided password.
 * This password could come from a Power Automate flow.
 */
function main(workbook: ExcelScript.Workbook, password: string) {
  // Get the worksheet named "Sales".
  const sheet = workbook.getWorksheet("Sales");
  const protection: ExcelScript.WorksheetProtection = sheet.getProtection();
  
  // Check if the provided password works.
  if (protection.checkPassword(password)) {
    protection.pauseProtection(password);

    // Edit the worksheet...

    protection.resumeProtection();
  } else {
    console.log("Incorrect password");
  }
}

Methoden

addAllowEditRange(title, rangeAddress, options)

Fügt dem Arbeitsblatt ein -Objekt hinzu AllowEditRange . Der Arbeitsblattschutz muss deaktiviert oder angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied , und der Add-Vorgang schlägt fehl.

checkPassword(password)

Gibt an, ob das Kennwort zum Entsperren des Arbeitsblattschutzes verwendet werden kann. Diese Methode ändert den Schutzstatus des Arbeitsblatts nicht. Wenn ein Kennwort eingegeben wird, aber kein Kennwort zum Entsperren des Arbeitsblattschutzes erforderlich ist, gibt diese Methode false zurück.

getAllowEditRange(key)

Ruft das AllowEditRange -Objekt anhand seines Titels ab.

getAllowEditRanges()

Gibt das AllowEditRangeCollection in diesem Arbeitsblatt gefundene Objekt an. Dies ist eine Auflistung von AllowEditRange -Objekten, die mit Arbeitsblattschutzeigenschaften funktionieren. Wenn der Arbeitsblattschutz aktiviert ist, kann ein AllowEditRange -Objekt verwendet werden, um die Bearbeitung eines bestimmten Bereichs zu ermöglichen, während der Schutz für den Rest des Arbeitsblatts beibehalten wird.

getCanPauseProtection()

Gibt an, ob der Schutz für dieses Arbeitsblatt angehalten werden kann.

getIsPasswordProtected()

Gibt an, ob das Blatt kennwortsicher ist.

getIsPaused()

Gibt an, ob der Arbeitsblattschutz angehalten ist.

getOptions()

Gibt die Schutzoptionen für das Arbeitsblatt an.

getProtected()

Gibt an, ob das Arbeitsblatt geschützt ist.

getSavedOptions()

Gibt die im Arbeitsblatt gespeicherten Schutzoptionen an. Dadurch wird unabhängig vom Schutzstatus des Arbeitsblatts dasselbe WorksheetProtectionOptions Objekt zurückgegeben.

pauseProtection(password)

Hält den Arbeitsblattschutz für das angegebene Arbeitsblattobjekt für den Benutzer in der aktuellen Sitzung an. Diese Methode führt keine Aktion aus, wenn der Arbeitsblattschutz nicht aktiviert oder bereits angehalten ist. Wenn das Kennwort falsch ist, löst diese Methode einen Fehler aus InvalidArgument und kann den Schutz nicht anhalten. Diese Methode ändert den Schutzstatus nicht, wenn der Arbeitsblattschutz nicht aktiviert oder bereits angehalten ist.

pauseProtectionForAllAllowEditRanges(password)

Hält den Arbeitsblattschutz für alle AllowEditRange Objekte in diesem Arbeitsblatt an, die über das für den Benutzer in der aktuellen Sitzung angegebene Kennwort verfügen. Diese Methode führt keine Aktion aus, wenn der Arbeitsblattschutz nicht aktiviert oder angehalten ist. Wenn der Arbeitsblattschutz nicht angehalten werden kann, löst diese Methode einen Fehler aus UnsupportedOperation und kann den Schutz für den Bereich nicht anhalten. Wenn das Kennwort mit keinem AllowEditRange Objekt in der Auflistung übereinstimmt, löst diese Methode einen Fehler aus BadPassword und kann den Schutz für einen Bereich in der Auflistung nicht anhalten.

protect(options, password)

Schützt ein Arbeitsblatt. Schlägt fehl, wenn das Arbeitsblatt bereits geschützt wurde.

resumeProtection()

Setzt den Arbeitsblattschutz für das angegebene Arbeitsblattobjekt für den Benutzer in einer bestimmten Sitzung fort. Der Arbeitsblattschutz muss angehalten werden, damit diese Methode funktioniert. Wenn der Arbeitsblattschutz nicht angehalten wird, ändert diese Methode den Schutzstatus des Arbeitsblatts nicht.

setPassword(password)

Ändert das Kennwort, das dem WorksheetProtection -Objekt zugeordnet ist. Wenn Sie das Kennwort als leere Zeichenfolge ("") oder als festlegen null , wird der Kennwortschutz für das WorksheetProtection Objekt entfernt. Der Arbeitsblattschutz muss aktiviert und angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz deaktiviert ist, löst diese Methode einen Fehler aus InvalidOperation und kann das Kennwort nicht ändern. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied und kann das Kennwort nicht ändern.

unprotect(password)

Hebt den Schutz eines Arbeitsblatts auf.

updateOptions(options)

Ändern Sie die dem -Objekt zugeordneten WorksheetProtection Arbeitsblattschutzoptionen. Der Arbeitsblattschutz muss deaktiviert oder angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied und kann die Arbeitsblattschutzoptionen nicht ändern.

Details zur Methode

addAllowEditRange(title, rangeAddress, options)

Fügt dem Arbeitsblatt ein -Objekt hinzu AllowEditRange . Der Arbeitsblattschutz muss deaktiviert oder angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied , und der Add-Vorgang schlägt fehl.

addAllowEditRange(
            title: string,
            rangeAddress: string,
            options?: AllowEditRangeOptions
        ): void;

Parameter

title

string

Die Titelzeichenfolge des AllowEditRange hinzuzufügenden Objekts.

rangeAddress

string

Die Bereichsadresse des AllowEditRange hinzuzufügenden Objekts.

options
ExcelScript.AllowEditRangeOptions

Zusätzliche Optionen, die dem AllowEditRange Objekt hinzugefügt werden sollen, z. B. das Kennwort.

Gibt zurück

void

Beispiele

/**
 * This script adds a password-protected, editable range
 * to an otherwise protected worksheet.
 */
function main(workbook: ExcelScript.Workbook, password: string) {
    // Get the protection object for the "Data" worksheet.
    const dataSheet = workbook.getWorksheet("Data");
    const sheetProtection = dataSheet.getProtection();

    // Set the password needed to edit the range to be the user provided string.
    const editRangeProperties : ExcelScript.AllowEditRangeOptions = {
        password: password
    };

    // Set range "D2:D6" to be editable if the password is provided.
    sheetProtection.addAllowEditRange("Notes Section", "D2:D6", editRangeProperties);
    
    // Protect the worksheet.
    sheetProtection.protect();
}

checkPassword(password)

Gibt an, ob das Kennwort zum Entsperren des Arbeitsblattschutzes verwendet werden kann. Diese Methode ändert den Schutzstatus des Arbeitsblatts nicht. Wenn ein Kennwort eingegeben wird, aber kein Kennwort zum Entsperren des Arbeitsblattschutzes erforderlich ist, gibt diese Methode false zurück.

checkPassword(password?: string): boolean;

Parameter

password

string

Das Kennwort, das anhand des geschützten Arbeitsblatts überprüft werden soll.

Gibt zurück

boolean

getAllowEditRange(key)

Ruft das AllowEditRange -Objekt anhand seines Titels ab.

getAllowEditRange(key: string): AllowEditRange | undefined;

Parameter

key

string

Der Titel des AllowEditRange.

Gibt zurück

getAllowEditRanges()

Gibt das AllowEditRangeCollection in diesem Arbeitsblatt gefundene Objekt an. Dies ist eine Auflistung von AllowEditRange -Objekten, die mit Arbeitsblattschutzeigenschaften funktionieren. Wenn der Arbeitsblattschutz aktiviert ist, kann ein AllowEditRange -Objekt verwendet werden, um die Bearbeitung eines bestimmten Bereichs zu ermöglichen, während der Schutz für den Rest des Arbeitsblatts beibehalten wird.

getAllowEditRanges(): AllowEditRange[];

Gibt zurück

getCanPauseProtection()

Gibt an, ob der Schutz für dieses Arbeitsblatt angehalten werden kann.

getCanPauseProtection(): boolean;

Gibt zurück

boolean

getIsPasswordProtected()

Gibt an, ob das Blatt kennwortsicher ist.

getIsPasswordProtected(): boolean;

Gibt zurück

boolean

getIsPaused()

Gibt an, ob der Arbeitsblattschutz angehalten ist.

getIsPaused(): boolean;

Gibt zurück

boolean

getOptions()

Gibt die Schutzoptionen für das Arbeitsblatt an.

getOptions(): WorksheetProtectionOptions;

Gibt zurück

getProtected()

Gibt an, ob das Arbeitsblatt geschützt ist.

getProtected(): boolean;

Gibt zurück

boolean

getSavedOptions()

Gibt die im Arbeitsblatt gespeicherten Schutzoptionen an. Dadurch wird unabhängig vom Schutzstatus des Arbeitsblatts dasselbe WorksheetProtectionOptions Objekt zurückgegeben.

getSavedOptions(): WorksheetProtectionOptions;

Gibt zurück

pauseProtection(password)

Hält den Arbeitsblattschutz für das angegebene Arbeitsblattobjekt für den Benutzer in der aktuellen Sitzung an. Diese Methode führt keine Aktion aus, wenn der Arbeitsblattschutz nicht aktiviert oder bereits angehalten ist. Wenn das Kennwort falsch ist, löst diese Methode einen Fehler aus InvalidArgument und kann den Schutz nicht anhalten. Diese Methode ändert den Schutzstatus nicht, wenn der Arbeitsblattschutz nicht aktiviert oder bereits angehalten ist.

pauseProtection(password?: string): void;

Parameter

password

string

Das Kennwort, das dem geschützten Arbeitsblatt zugeordnet ist.

Gibt zurück

void

pauseProtectionForAllAllowEditRanges(password)

Hält den Arbeitsblattschutz für alle AllowEditRange Objekte in diesem Arbeitsblatt an, die über das für den Benutzer in der aktuellen Sitzung angegebene Kennwort verfügen. Diese Methode führt keine Aktion aus, wenn der Arbeitsblattschutz nicht aktiviert oder angehalten ist. Wenn der Arbeitsblattschutz nicht angehalten werden kann, löst diese Methode einen Fehler aus UnsupportedOperation und kann den Schutz für den Bereich nicht anhalten. Wenn das Kennwort mit keinem AllowEditRange Objekt in der Auflistung übereinstimmt, löst diese Methode einen Fehler aus BadPassword und kann den Schutz für einen Bereich in der Auflistung nicht anhalten.

pauseProtectionForAllAllowEditRanges(password: string): void;

Parameter

password

string

Das Kennwort zum Anhalten des Schutzes für die AllowEditRange Objekte.

Gibt zurück

void

protect(options, password)

Schützt ein Arbeitsblatt. Schlägt fehl, wenn das Arbeitsblatt bereits geschützt wurde.

protect(options?: WorksheetProtectionOptions, password?: string): void;

Parameter

options
ExcelScript.WorksheetProtectionOptions

Optional. Optionen für den Arbeitsblattschutz.

password

string

Optional. Blattschutzkennwort.

Gibt zurück

void

Beispiele

/**
 * This script protects cells from being selected on the current worksheet.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the protection settings for the current worksheet.
  const currentSheet = workbook.getActiveWorksheet();
  const sheetProtection = currentSheet.getProtection();

  // Create a new WorksheetProtectionOptions object with the selectionMode property set to `none`.
  let protectionOptions : ExcelScript.WorksheetProtectionOptions = {
    selectionMode: ExcelScript.ProtectionSelectionMode.none
  }

  // Apply the given protection options.
  sheetProtection.protect(protectionOptions);
}

resumeProtection()

Setzt den Arbeitsblattschutz für das angegebene Arbeitsblattobjekt für den Benutzer in einer bestimmten Sitzung fort. Der Arbeitsblattschutz muss angehalten werden, damit diese Methode funktioniert. Wenn der Arbeitsblattschutz nicht angehalten wird, ändert diese Methode den Schutzstatus des Arbeitsblatts nicht.

resumeProtection(): void;

Gibt zurück

void

setPassword(password)

Ändert das Kennwort, das dem WorksheetProtection -Objekt zugeordnet ist. Wenn Sie das Kennwort als leere Zeichenfolge ("") oder als festlegen null , wird der Kennwortschutz für das WorksheetProtection Objekt entfernt. Der Arbeitsblattschutz muss aktiviert und angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz deaktiviert ist, löst diese Methode einen Fehler aus InvalidOperation und kann das Kennwort nicht ändern. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied und kann das Kennwort nicht ändern.

setPassword(password?: string): void;

Parameter

password

string

Das Kennwort, das dem WorksheetProtection -Objekt zugeordnet ist.

Gibt zurück

void

unprotect(password)

Hebt den Schutz eines Arbeitsblatts auf.

unprotect(password?: string): void;

Parameter

password

string

Blattschutzkennwort.

Gibt zurück

void

updateOptions(options)

Ändern Sie die dem -Objekt zugeordneten WorksheetProtection Arbeitsblattschutzoptionen. Der Arbeitsblattschutz muss deaktiviert oder angehalten werden, damit diese Methode ordnungsgemäß funktioniert. Wenn der Arbeitsblattschutz aktiviert und nicht angehalten ist, löst diese Methode einen Fehler aus AccessDenied und kann die Arbeitsblattschutzoptionen nicht ändern.

updateOptions(options: WorksheetProtectionOptions): void;

Parameter

options
ExcelScript.WorksheetProtectionOptions

Die options-Schnittstelle, die dem WorksheetProtection -Objekt zugeordnet ist.

Gibt zurück

void