Partager via


ExcelScript.WorksheetProtection interface

Représente la protection d’un objet de feuille de calcul.

Remarques

Exemples

/**
 * 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");
  }
}

Méthodes

addAllowEditRange(title, rangeAddress, options)

Ajoute un AllowEditRange objet à la feuille de calcul. La protection de feuille de calcul doit être désactivée ou suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et l’opération d’ajout échoue.

checkPassword(password)

Spécifie si le mot de passe peut être utilisé pour déverrouiller la protection de feuille de calcul. Cette méthode ne modifie pas l’état de protection de la feuille de calcul. Si un mot de passe est entré, mais qu’aucun mot de passe n’est requis pour déverrouiller la protection de la feuille de calcul, cette méthode retourne false.

getAllowEditRange(key)

Obtient l’objet AllowEditRange par son titre.

getAllowEditRanges()

Spécifie l’objet AllowEditRangeCollection trouvé dans cette feuille de calcul. Il s’agit d’une collection d’objets AllowEditRange qui fonctionnent avec les propriétés de protection de feuille de calcul. Lorsque la protection de feuille de calcul est activée, un AllowEditRange objet peut être utilisé pour permettre la modification d’une plage spécifique, tout en conservant la protection sur le reste de la feuille de calcul.

getCanPauseProtection()

Spécifie si la protection peut être suspendue pour cette feuille de calcul.

getIsPasswordProtected()

Spécifie si la feuille est protégée par mot de passe.

getIsPaused()

Spécifie si la protection de la feuille de calcul est suspendue.

getOptions()

Spécifie les options de protection de la feuille de calcul.

getProtected()

Spécifie si la feuille de calcul est protégée.

getSavedOptions()

Spécifie les options de protection enregistrées dans la feuille de calcul. Cette opération retourne le même WorksheetProtectionOptions objet, quel que soit l’état de protection de la feuille de calcul.

pauseProtection(password)

Suspend la protection de la feuille de calcul pour l’objet de feuille de calcul donné pour l’utilisateur de la session active. Cette méthode ne fait rien si la protection de feuille de calcul n’est pas activée ou est déjà suspendue. Si le mot de passe est incorrect, cette méthode génère une InvalidArgument erreur et ne parvient pas à suspendre la protection. Cette méthode ne modifie pas l’état de protection si la protection de feuille de calcul n’est pas activée ou déjà suspendue.

pauseProtectionForAllAllowEditRanges(password)

Suspend la protection de la feuille de calcul pour tous les AllowEditRange objets de cette feuille de calcul qui ont le mot de passe donné à l’utilisateur dans la session active. Cette méthode ne fait rien si la protection de feuille de calcul n’est pas activée ou est suspendue. Si la protection de la feuille de calcul ne peut pas être suspendue, cette méthode génère une UnsupportedOperation erreur et ne parvient pas à suspendre la protection de la plage. Si le mot de passe ne correspond à aucun AllowEditRange objet de la collection, cette méthode génère une BadPassword erreur et ne parvient pas à suspendre la protection des plages de la collection.

protect(options, password)

Protège une feuille de calcul. Échoue si la feuille de calcul a déjà été protégée.

resumeProtection()

Reprend la protection de feuille de calcul pour l’objet de feuille de calcul donné pour l’utilisateur dans une session donnée. La protection de la feuille de calcul doit être suspendue pour que cette méthode fonctionne. Si la protection de la feuille de calcul n’est pas suspendue, cette méthode ne modifie pas l’état de protection de la feuille de calcul.

setPassword(password)

Modifie le mot de passe associé à l’objet WorksheetProtection . La définition du mot de passe sous la forme d’une chaîne vide («  ») ou comme null supprime la protection par mot de passe de l’objet WorksheetProtection . La protection de feuille de calcul doit être activée et suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est désactivée, cette méthode génère une InvalidOperation erreur et ne parvient pas à modifier le mot de passe. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et ne parvient pas à modifier le mot de passe.

unprotect(password)

Annule la protection d’une feuille de calcul.

updateOptions(options)

Modifiez les options de protection de feuille de calcul associées à l’objet WorksheetProtection . La protection de feuille de calcul doit être désactivée ou suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et ne parvient pas à modifier les options de protection de feuille de calcul.

Détails de la méthode

addAllowEditRange(title, rangeAddress, options)

Ajoute un AllowEditRange objet à la feuille de calcul. La protection de feuille de calcul doit être désactivée ou suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et l’opération d’ajout échoue.

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

Paramètres

title

string

Chaîne de titre de l’objet AllowEditRange à ajouter.

rangeAddress

string

Adresse de plage de l’objet AllowEditRange à ajouter.

options
ExcelScript.AllowEditRangeOptions

Options supplémentaires à ajouter à l’objet AllowEditRange , telles que le mot de passe.

Retours

void

Exemples

/**
 * 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)

Spécifie si le mot de passe peut être utilisé pour déverrouiller la protection de feuille de calcul. Cette méthode ne modifie pas l’état de protection de la feuille de calcul. Si un mot de passe est entré, mais qu’aucun mot de passe n’est requis pour déverrouiller la protection de la feuille de calcul, cette méthode retourne false.

checkPassword(password?: string): boolean;

Paramètres

password

string

Mot de passe à case activée sur la feuille de calcul protégée.

Retours

boolean

getAllowEditRange(key)

Obtient l’objet AllowEditRange par son titre.

getAllowEditRange(key: string): AllowEditRange | undefined;

Paramètres

key

string

Titre de .AllowEditRange

Retours

getAllowEditRanges()

Spécifie l’objet AllowEditRangeCollection trouvé dans cette feuille de calcul. Il s’agit d’une collection d’objets AllowEditRange qui fonctionnent avec les propriétés de protection de feuille de calcul. Lorsque la protection de feuille de calcul est activée, un AllowEditRange objet peut être utilisé pour permettre la modification d’une plage spécifique, tout en conservant la protection sur le reste de la feuille de calcul.

getAllowEditRanges(): AllowEditRange[];

Retours

getCanPauseProtection()

Spécifie si la protection peut être suspendue pour cette feuille de calcul.

getCanPauseProtection(): boolean;

Retours

boolean

getIsPasswordProtected()

Spécifie si la feuille est protégée par mot de passe.

getIsPasswordProtected(): boolean;

Retours

boolean

getIsPaused()

Spécifie si la protection de la feuille de calcul est suspendue.

getIsPaused(): boolean;

Retours

boolean

getOptions()

Spécifie les options de protection de la feuille de calcul.

getOptions(): WorksheetProtectionOptions;

Retours

getProtected()

Spécifie si la feuille de calcul est protégée.

getProtected(): boolean;

Retours

boolean

getSavedOptions()

Spécifie les options de protection enregistrées dans la feuille de calcul. Cette opération retourne le même WorksheetProtectionOptions objet, quel que soit l’état de protection de la feuille de calcul.

getSavedOptions(): WorksheetProtectionOptions;

Retours

pauseProtection(password)

Suspend la protection de la feuille de calcul pour l’objet de feuille de calcul donné pour l’utilisateur de la session active. Cette méthode ne fait rien si la protection de feuille de calcul n’est pas activée ou est déjà suspendue. Si le mot de passe est incorrect, cette méthode génère une InvalidArgument erreur et ne parvient pas à suspendre la protection. Cette méthode ne modifie pas l’état de protection si la protection de feuille de calcul n’est pas activée ou déjà suspendue.

pauseProtection(password?: string): void;

Paramètres

password

string

Mot de passe associé à la feuille de calcul protégée.

Retours

void

pauseProtectionForAllAllowEditRanges(password)

Suspend la protection de la feuille de calcul pour tous les AllowEditRange objets de cette feuille de calcul qui ont le mot de passe donné à l’utilisateur dans la session active. Cette méthode ne fait rien si la protection de feuille de calcul n’est pas activée ou est suspendue. Si la protection de la feuille de calcul ne peut pas être suspendue, cette méthode génère une UnsupportedOperation erreur et ne parvient pas à suspendre la protection de la plage. Si le mot de passe ne correspond à aucun AllowEditRange objet de la collection, cette méthode génère une BadPassword erreur et ne parvient pas à suspendre la protection des plages de la collection.

pauseProtectionForAllAllowEditRanges(password: string): void;

Paramètres

password

string

Mot de passe pour suspendre la protection sur les AllowEditRange objets.

Retours

void

protect(options, password)

Protège une feuille de calcul. Échoue si la feuille de calcul a déjà été protégée.

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

Paramètres

options
ExcelScript.WorksheetProtectionOptions

Optional. Options de protection de feuille.

password

string

Optional. Mot de passe de protection de feuille.

Retours

void

Exemples

/**
 * 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()

Reprend la protection de feuille de calcul pour l’objet de feuille de calcul donné pour l’utilisateur dans une session donnée. La protection de la feuille de calcul doit être suspendue pour que cette méthode fonctionne. Si la protection de la feuille de calcul n’est pas suspendue, cette méthode ne modifie pas l’état de protection de la feuille de calcul.

resumeProtection(): void;

Retours

void

setPassword(password)

Modifie le mot de passe associé à l’objet WorksheetProtection . La définition du mot de passe sous la forme d’une chaîne vide («  ») ou comme null supprime la protection par mot de passe de l’objet WorksheetProtection . La protection de feuille de calcul doit être activée et suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est désactivée, cette méthode génère une InvalidOperation erreur et ne parvient pas à modifier le mot de passe. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et ne parvient pas à modifier le mot de passe.

setPassword(password?: string): void;

Paramètres

password

string

Mot de passe associé à l’objet WorksheetProtection .

Retours

void

unprotect(password)

Annule la protection d’une feuille de calcul.

unprotect(password?: string): void;

Paramètres

password

string

Mot de passe de protection de feuille.

Retours

void

updateOptions(options)

Modifiez les options de protection de feuille de calcul associées à l’objet WorksheetProtection . La protection de feuille de calcul doit être désactivée ou suspendue pour que cette méthode fonctionne correctement. Si la protection de feuille de calcul est activée et non suspendue, cette méthode génère une AccessDenied erreur et ne parvient pas à modifier les options de protection de feuille de calcul.

updateOptions(options: WorksheetProtectionOptions): void;

Paramètres

options
ExcelScript.WorksheetProtectionOptions

Interface d’options associée à l’objet WorksheetProtection .

Retours

void