RangePermissions
RangePermissions
返回一个保护区域对象的集合
属性
count
返回当前工作表内受保护区域的数量
语法
RangePermissions.count
RangePermissions:保护区域集合对象
返回值
Promise<number>
示例
async function example() {
// 活动工作簿
const activeWorkbook = await Application.ActiveWorkbook;
// 活动工作表
const activeWorksheet = await activeWorkbook.getActiveSheet()
// 获取活动工作表内保护区域对象的集合
const rangePermissions = await activeWorksheet.RangePermissions;
// 获取活动工作表中受保护区域的数量
const count = await rangePermissions.count;
console.log(count);
}
方法
add
对一个区域添加保护
语法
RangePermissions.add(type, range, users, description)
RangePermissions:保护区域集合对象
参数
| 属性 | 数据类型 | 必填 | 说明 |
|---|---|---|---|
| type | PermissionType | 是 | 保护的类型 |
| range | Excel.Range | 否 | 添加保护的区域(默认为当前选中区域) |
| users | string[] | 否 | 对受保护区域拥有编辑权限的用户,当传入['everyone']意为该区域所有用户均可编辑 |
| description | string | 否 | 描述信息 |
返回值
Promise<RangePermission>
示例
async function example() {
// 活动工作簿
const activeWorkbook = await Application.ActiveWorkbook;
// 活动工作表
const activeWorksheet = await activeWorkbook.getActiveSheet();
// 获取活动工作表内保护区域对象的集合
const rangePermissions = await activeWorksheet.RangePermissions;
// 一、对活动工作表的默认区域添加隐藏类型的保护
const rangePermission1 = await rangePermissions.add(Excel.PermissionType.Hide);
// 二、对活动工作表的指定区域添加只读类型的保护
const range = await activeWorksheet.getRange(1,1,5,5);
const rangePermission2 = await rangePermissions.add(Excel.PermissionType.ReadOnly, range);
// 三、对活动工作表的指定区域添加只读类型的保护,同时指定用户1、用户2可以编辑
// test01、test02为用户1、用户2的ID
const range2 = await activeWorksheet.getRange(6,1,11,5);
const rangePermission2 = await rangePermissions.add(Excel.PermissionType.ReadOnly, range2, ['test01','test02']);
}
item
返回一个保护区域对象
语法
RangePermissions.item(index)
RangePermissions:保护区域集合对象
参数
| 属性 | 数据类型 | 必填 | 说明 |
|---|---|---|---|
| index | number | 是 | 对象的索引值 |
返回值
Promise<RangePermission>
示例
async function example() {
// 活动工作簿
const activeWorkbook = await Application.ActiveWorkbook;
// 活动工作表
const activeWorksheet = await activeWorkbook.getActiveSheet();
// 获取活动工作表内保护区域对象的集合
const rangePermissions = await activeWorksheet.RangePermissions;
// 获取第一个保护区域对象
const rangePermission = await rangePermissions.item(1);
}
deleteAll
对当前工作表所有区域取消保护
语法
RangePermissions.deleteAll()
RangePermissions:保护区域集合对象
返回值
Promise<boolean>
示例
async function example() {
// 活动工作簿
const activeWorkbook = await Application.ActiveWorkbook;
// 活动工作表
const activeWorksheet = await activeWorkbook.getActiveSheet();
// 获取活动工作表内保护区域对象的集合
const rangePermissions = await activeWorksheet.RangePermissions;
// 取消活动工作表中所有区域的保护
await rangePermissions.deleteAll();
}