本文介绍与表格文档Sheet相关的API。

Sheets

ActiveWorkbook.Sheets

获取活动工作簿中的所有工作表。

  • 语法

    表达式.ActiveWorkbook.Sheets

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      // 工作簿(Workbook)中所有工作表(Sheet)的集合
      const sheets = await app.ActiveWorkbook.Sheets;
    }

方法

ActiveWorkbook.Sheets.Add()

通过Add()方法,您可以新增工作表。

  • 语法

    表达式.ActiveWorkbook.Sheets.Add({ Before, After, Count, Type, Name })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Before

    String/Number

    指定工作表的对象,新增的工作表将置于此工作表之前。

    After

    String/Number

    指定工作表的对象,新增的工作表将置于此工作表之后。

    Count

    Number

    新增工作表的数量。默认值为1。

    Type

    Enum

    新增工作表的类型。更多信息,请参见XlSheetType

    Name

    Name

    新增工作表的名称。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      // 工作表对象
      const sheets = await app.ActiveWorkbook.Sheets;
    
      // 添加工作表
      await sheets.Add(null, null, 1, app.Enum.XlSheetType.xlWorksheet, '新工作表');
    }

属性

ActiveWorkbook.Sheets.Count

通过Count属性,您可以获取活动工作簿中工作表的数量。

  • 语法

    表达式.ActiveWorkbook.Sheets.Count

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      // 工作表对象
      const sheets = await app.ActiveWorkbook.Sheets;
    
      // 工作表数量
      const count = await sheets.Count;
      console.log(count);
    }

Sheet

ActiveWorkbook.Sheets.Item(Index)

获取活动工作簿中的单个工作表对象。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Item

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      // 工作表对象
      const sheet = await app.ActiveWorkbook.Sheets.Item(1)
    }

方法

ActiveWorkbook.Sheets.Item(Index).Delete()

通过Delete()方法,您可以删除活动工作簿中的单个工作表。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Delete()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      await activeSheet.Delete();
    } 

ActiveWorkbook.Sheets.Item(Index).ExportAsFixedFormat()

通过ExportAsFixedFormat()方法,您可以导出工作表为对应的PDF或者Img图片,并获取导出文件的URL。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).ExportAsFixedFormat({ Type })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Type

    Enum

    导出文件的类型。更多信息,请参见XlFixedFormatType

    说明

    目前仅支持导出图片和导出 PDF。

  • 返回值

    属性

    数据类型

    描述

    url

    string

    导出后的URL。

  • 示例

    • 导出PDF

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        // 导出整个表格
        const workbookPdfUrl = await app.ActiveWorkbook.Sheets.Item(1).ExportAsFixedFormat();
        console.log(workbookPdfUrl);
      }
    • 导出图片

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        // 导出整个表格
        const workbookPdfUrl = await app.ActiveWorkbook.Sheets.Item(1).ExportAsFixedFormat();
        console.log(workbookPdfUrl);
      }

ActiveWorkbook.Sheets.Item(Index).Protect()

通过Protect()方法,您可以设置保护指定工作表使其不被修改。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Protect({ Password, DrawingObjects, Scenarios, AllowSelLockedCells, AllowSelUnlockedCells, AllowFormattingCells, AllowFormattingColumns, AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows, AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows, AllowSorting, AllowFiltering, AllowUsingPivotTables })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    默认值

    必填

    说明

    Password

    String

    指定工作表或工作簿的区分大小写密码的字符串。如果省略此参数,可以不使用密码地解除对工作表或工作簿的保护。否则,必须指定密码才能解除对工作表或工作簿的保护。如果忘记密码,则无法解除对工作表或工作簿的保护

    DrawingObjects

    Boolean

    false

    如果为 true,则保护形状

    Scenarios

    Boolean

    true

    如果为 true,则保护方案。此参数仅对工作表有效

    AllowSelLockedCells

    Boolean

    true

    如果为 true, 则禁止选中锁定单元格

    AllowSelUnLockedCells

    Boolean

    true

    如果为 true, 则禁止选中未锁定单元格

    AllowFormattingCells

    Boolean

    false

    如果为 true,则允许用户格式化受保护工作表上的任何单元格

    AllowFormattingColumns

    Boolean

    false

    如果为 true,则允许用户格式化受保护工作表上的任何列

    AllowFormattingRows

    Boolean

    false

    如果为 true,则允许用户格式化受保护的工作表上的任何行

    AllowInsertingColumns

    Boolean

    false

    如果为 true,则允许用户在受保护工作表上插入列

    AllowInsertingRows

    Boolean

    false

    如果为 true,则允许用户在受保护工作表上插入行

    AllowInsertingHyperlinks

    Boolean

    false

    如果为 true,则允许用户在受保护的工作表上插入超链接

    AllowDeletingColumns

    Boolean

    false

    如果为 true,则允许用户在受保护的工作表上删除列,其中要删除的列中的每个单元格都处于解锁状态

    AllowDeletingRows

    Boolean

    false

    如果为 true,则允许用户在受保护的工作表上删除行,其中要删除的行中的每个单元格都处于解锁状态

    AllowSorting

    Boolean

    false

    如果为 true,则允许用户对受保护工作表进行排序。排序范围内的每个单元都必须处于解锁或不受保护的状态

    AllowFiltering

    Boolean

    false

    如果为 true,则允许用户在受保护的工作表上设置筛选。用户可以更改筛选条件,但无法启用或禁用自动筛选。 用户可以在现有自动筛选上设置筛选

    AllowUsingPivotTables

    Boolean

    false

    如果为 true,则允许用户在受保护的工作表上使用数据透视表

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      activeSheet.Protect('123456');
    }

ActiveWorkbook.Sheets.Item(Index).Unprotect()

通过Unprotect()方法,您可以解除指定工作表中的保护,如果工作表未受保护,则此方法无效。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Unprotect({ Password })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Password

    String

    设置的密码。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      activeSheet.Unprotect('123456');
    }

ActiveWorkbook.Sheets.Item(Index).Activate()

通过Activate()方法,您可以切换到指定工作表。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Activate()

    或者表达式.Sheets(Index).Activate()

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    Number

    第 Index 个 Sheet

  • 示例

    • 示例一

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        // 切换到指定工作表
        const sheetIndex = 2; // Sheets 序号,从 1 开始
        app.ActiveWorkbook.Sheets.Item(sheetIndex).Activate();
      }
    • 示例二

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        // 切换到指定工作表
        const sheetIndex = 2; // Sheets 序号,从 1 开始
        app.Sheets(sheetIndex).Activate();
      }

ActiveWorkbook.Sheets.Item(Index).Move()

通过Move()方法,您可以移动工作表。

重要

JS-SDK V1.1.12及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Move({ Before, After })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Before

    number

    指定的工作表ID。将目标工作表移动到该工作表之前。如果指定After,则不能指定Before。

    After

    number

    指定的工作表ID。将目标工作表移动到该工作表之后。如果指定Before,则不能指定After。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      await app.ActiveWorkbook.Sheets(1).Move({
        Before: null,
        After: await app.ActiveWorkbook.Sheets(2).Id,
      })
    }

属性

ActiveWorkbook.Sheets.Item(Index).Type

通过Type属性,您可以获取指定工作表的类型。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Type

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 工作表对象
      const sheetIndex = 2; // Sheets 序号,从 1 开始
      const sheet = await app.ActiveWorkbook.Sheets.Item(sheetIndex)
    
      // 工作表类型
      const Type = await sheet.Type;
      console.log(Type);
    }

ActiveWorkbook.Sheets.Item(Index).Columns

通过Columns属性,您可以获取指定工作表的所有列。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Columns

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      const chartObjects = await activeSheet.Columns;
    }

ActiveWorkbook.Sheets.Item(Index).Range

通过Range属性,您可以获取一个单元格或单元格区域。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Range

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 工作表对象
      const Sheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      // 一个单元格或单元格区域
      const Range = await Sheet.Range;
    
      // 指定单元格
      const range = await Range.Item("D2");
      // 或者 range = await Range("D2")
    
      // 选中D2单元格
      await range.Select();
    }

ActiveWorkbook.Sheets.Item(Index).Cells

通过Cells属性,您可以获取指定工作表中的所有单元格。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Cells

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 工作表对象
      const Sheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      // 单元格对象
      const cells = await Sheet.Cells;
    
      // 指定单元格
      const cell = await cells.Item(1);
      // 或者 cell = await cells(1)
    
      // 选中第 1 个单元格
      await cell.Select();
    }

ActiveWorkbook.Sheets.Item(Index).Name

通过Name属性,您可以获取指定工作表的名称。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Name

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      const name = await app.ActiveWorkbook.Sheets.Item(1).Name;
      console.log(name);
    }

ActiveWorkbook.Sheets.Item(Index).Names

通过Names属性,您可以获取指定工作表的所有名称。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Names

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      const names = await activeSheet.Names;
    }

ActiveWorkbook.Sheets.Item(Index).Rows

通过Rows属性,您可以获取指定工作表的所有行。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Rows

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 工作表对象
      const Sheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      // 行对象
      const Rows = await Sheet.Rows;
    
      // 指定行
      const row = await Rows.Item(1);
      // 或者 row = await Rows(1)
    
      // 选中第 1 行
      await row.Select();
    }

ActiveWorkbook.Sheets.Item(Index).UsedRange

通过UsedRange属性,您可以获取指定工作表的使用区域。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).UsedRange

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 工作表对象
      const Sheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      // 工作表上的所用区域
      const UsedRange = await Sheet.UsedRange;
    
      // 选中所用区域
      UsedRange.Select();
    }

ActiveWorkbook.Sheets.Item(Index).Index

通过Index属性,您可以获取指定工作表的Index。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Index

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const index = await app.ActiveWorkbook.Sheets.Item(1).Index;
      console.log(index);
    }

ActiveWorkbook.Sheets.Item(Index).Shapes

通过Shapes属性,您可以获取指定工作表的所有图形对象。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Shapes

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const activeSheet = await app.ActiveWorkbook.Sheets.Item(1);
    
      const shapes = await activeSheet.Shapes;
    }

ActiveWorkbook.Sheets.Item(Index).Visible

通过Visible属性,您可以设置和获取指定工作表是否隐藏。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Visible = Boolean

    表达式:文档类型应用对象

    Boolean取值为true时,表示显示指定工作表,取值为false时,表示隐藏指定工作表。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const visible = await app.ActiveWorkbook.Sheets.Item(1).Visible;
      console.log(visible);
    
      app.ActiveWorkbook.Sheets.Item(1).Visible = false;
    }

ActiveWorkbook.Sheets.Item(Index).Id

通过Id属性,您可以获取指定工作表的ID。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveWorkbook.Sheets.Item(Index).Id

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const id = await app.ActiveWorkbook.Sheets.Item(1).Id;
      console.log(id);
    }