Excel.WorkbookProtection class

表示对工作簿对象的保护。

扩展

注解

[ API 集:ExcelApi 1.7 ]

属性

context

与 对象关联的请求上下文。 这会将加载项的进程连接到 Office 主机应用程序的进程。

protected

指定工作簿是否受保护。

方法

load(options)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNames)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNamesAndPaths)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

protect(password)

保护工作簿。 如果工作簿处于受保护状态,则无法执行此方法。

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来又调用toJSON传递给它的 对象的 方法。) 虽然原始 Excel.WorkbookProtection 对象是 API 对象,但toJSON该方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.WorkbookProtectionData) ,该对象包含从原始对象加载的任何子属性的浅表副本。

unprotect(password)

取消保护工作簿。

属性详细信息

context

与 对象关联的请求上下文。 这会将加载项的进程连接到 Office 主机应用程序的进程。

context: RequestContext;

属性值

protected

指定工作簿是否受保护。

readonly protected: boolean;

属性值

boolean

注解

[ API 集:ExcelApi 1.7 ]

方法详细信息

load(options)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(options?: Excel.Interfaces.WorkbookProtectionLoadOptions): Excel.WorkbookProtection;

参数

options
Excel.Interfaces.WorkbookProtectionLoadOptions

提供要加载对象的属性的选项。

返回

load(propertyNames)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNames?: string | string[]): Excel.WorkbookProtection;

参数

propertyNames

string | string[]

逗号分隔的字符串或指定要加载的属性的字符串数组。

返回

load(propertyNamesAndPaths)

将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): Excel.WorkbookProtection;

参数

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select 是一个逗号分隔的字符串,指定要加载的属性,是 propertyNamesAndPaths.expand 一个逗号分隔的字符串,指定要加载的导航属性。

返回

protect(password)

保护工作簿。 如果工作簿处于受保护状态,则无法执行此方法。

protect(password?: string): void;

参数

password

string

工作簿保护密码。

返回

void

注解

[ API 集:ExcelApi 1.7 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/data-protection.yaml

let password = await passwordHandler();
passwordHelper(password);
await Excel.run(async (context) => {
    let workbook = context.workbook;
    workbook.load("protection/protected");

    await context.sync();

    if (!workbook.protection.protected) {
        workbook.protection.protect(password);
    }
});

toJSON()

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来又调用toJSON传递给它的 对象的 方法。) 虽然原始 Excel.WorkbookProtection 对象是 API 对象,但toJSON该方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.WorkbookProtectionData) ,该对象包含从原始对象加载的任何子属性的浅表副本。

toJSON(): Excel.Interfaces.WorkbookProtectionData;

返回

unprotect(password)

取消保护工作簿。

unprotect(password?: string): void;

参数

password

string

工作簿保护密码。

返回

void

注解

[ API 集:ExcelApi 1.7 ]

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/data-protection.yaml

let password = await passwordHandler();
passwordHelper(password);
await Excel.run(async (context) => {
    let workbook = context.workbook;
    workbook.protection.unprotect(password);
});