Skip to content

工作表

Sheets

工作簿(Workbook)中所有工作表(Sheet)的集合

语法

表达式.ActiveWorkbook.Sheets

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 工作簿(Workbook)中所有工作表(Sheet)的集合
  const sheets = await app.ActiveWorkbook.Sheets
}

Count

工作表数量

语法

表达式.ActiveWorkbook.Sheets.Count

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 工作表对象
  const sheets = await app.ActiveWorkbook.Sheets

  // 工作表数量
  const count = await sheets.Count
  console.log(count)
}

DefaultNewSheetName

默认新工作表名

语法

表达式.ActiveWorkbook.Sheets.DefaultNewSheetName

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 工作表对象
  const sheets = await app.ActiveWorkbook.Sheets

  // 默认新工作表名
  const defaultNewSheetName = await sheets.DefaultNewSheetName
  console.log(defaultNewSheetName)
}

Add()

新增工作表

语法

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

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

参数

属性数据类型默认值必填说明
Before
String/Number
是
指定工作表的对象,新建的工作表将置于此工作表之前
After
String/Number
否
指定工作表的对象,新建的工作表将置于此工作表之后
Count
Number
1
否
要添加的工作表数。默认值为选定工作表的数量
Type
Enum
否
指定工作表类型,详细可见 Enum.XlSheetType
Name
Name
否
指定工作表名称

示例

//@file=base.xlsx
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, '新工作表')
}

Item()

工作表对象

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 工作表对象
  const sheet = await app.ActiveWorkbook.Sheets.Item(1)
}

Item().Cells

工作表上的单元格,返回一个 Range 对象(可使用 Range 相关的属性、方法)

语法

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

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

示例

//@file=base.xlsx
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()
}

Item().Columns

工作表上的所有列,返回的是一个 Range 对象,可参考使用 Range(区域)

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  const chartObjects = await activeSheet.Columns
}

Item().Id

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

获取工作表 Id

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const id = await app.ActiveWorkbook.Sheets.Item(1).Id
  console.log(id)
}

Item().Index

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

工作表的 index

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const index = await app.ActiveWorkbook.Sheets.Item(1).Index
  console.log(index)
}

Item().Name

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

设置/获取 工作表名称

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const name = await app.ActiveWorkbook.Sheets.Item(1).Name
  console.log(name)

  app.ActiveWorkbook.Sheets.Item(1).Name = 'WPS WebOffice'
}

Item().Names

返回一个 Names 集合,该集合代表所有工作表特定的名称,详细使用可参考 名称管理器

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  const names = await activeSheet.Names
}

Item().Range

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

一个单元格或单元格区域,返回一个 Range 对象(可使用 Range 相关的属性、方法)

语法

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

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

示例

//@file=base.xlsx
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('D2')

  // 选中D2单元格
  await range.Select()
}

Item().Rows

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

工作表上的行,返回一个 Range 对象(可使用 Range 相关的属性、方法)

语法

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

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

示例

//@file=base.xlsx
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()
}

Item().Shapes

当前工作表上的所有 Shape 对象的集合,使用方式可见 Shapes 对象

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  const shapes = await activeSheet.Shapes
}

Item().Type

JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持

工作表类型

语法

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

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

示例

//@file=base.xlsx
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)
}

Item().UsedRange

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

工作表上的所用区域,返回一个 Range 对象(可使用 Range 相关的属性、方法)

语法

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

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

示例

//@file=base.xlsx
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()
}

Item().Visible

JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持

显示/隐藏 工作表

语法

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

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

示例

//@file=base.xlsx
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
}

Item().Activate()

切换到指定工作表

语法

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

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

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

参数

属性数据类型默认值必填说明
Index
Number
是
第 Index 个 Sheet

示例一

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 切换到指定工作表
  const sheetIndex = 2 // Sheets 序号,从 1 开始
  app.ActiveWorkbook.Sheets.Item(sheetIndex).Activate()
}

示例二

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 切换到指定工作表
  const sheetIndex = 2 // Sheets 序号,从 1 开始
  app.Sheets(sheetIndex).Activate()
}

Item().Delete()

删除指定工作表

语法

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

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

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  await activeSheet.Delete()
}

Item().ExportAsFixedFormat()

导出工作表为对应的 PDF 或者 Img 图片,并获取导出后的 url

语法

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

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

参数

属性数据类型默认值必填说明
Type
Enum
可选
导出的类型,详细可参考 Enum.XlFixedFormatType,目前仅支持导出图片和导出 PDF

返回值

属性数据类型说明
url
string
导出后的 url

示例 1:导出 PDF

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 导出整个表格
  const workbookPdfUrl = await app.ActiveWorkbook.Sheets.Item(
    1
  ).ExportAsFixedFormat()
  console.log(workbookPdfUrl)
}

示例 2:导出图片

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  // 导出整个表格
  const workbookPdfUrl = await app.ActiveWorkbook.Sheets.Item(
    1
  ).ExportAsFixedFormat({
    Type: app.Enum.XlFixedFormatType.xlTypeIMG
  })
  console.log(workbookPdfUrl)
}

Item().Move()

JSSDK: v1.1.12+、WebOffice v2.5.1+ 支持

移动工作表

语法

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

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

参数

属性数据类型默认值必填说明
Before
number
null
否
验将放置移动的工作表之前的工作表 ID。如果指定 After ,则不能指定 Before。
After
number
null
否
将放置移动的工作表后的工作表 ID。如果指定 Before ,则不能指定 After

示例

//@file=base.xlsx
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
  })
}

Item().Protect()

保护工作表使其不被修改

语法

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

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

参数

属性数据类型默认值必填说明
Password
String
否
指定工作表或工作簿的区分大小写密码的字符串。如果省略此参数,可以不使用密码地解除对工作表或工作簿的保护。否则,必须指定密码才能解除对工作表或工作簿的保护。如果忘记密码,则无法解除对工作表或工作簿的保护
DrawingObjects
Boolean
false
否
如果为 true,则保护形状
Scenarios
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,则允许用户在受保护的工作表上使用数据透视表

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  activeSheet.Protect('123456')
}

Item().Unprotect()

去除工作表或工作簿中的保护。如果工作表或工作簿不是受保护的,则此方法不起作用

语法

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

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

参数

属性数据类型默认值必填说明
Password
String
否
设置的密码

示例

//@file=base.xlsx
async function example() {
  await instance.ready()

  const app = instance.Application

  const activeSheet = await app.ActiveWorkbook.Sheets.Item(1)

  activeSheet.Unprotect('123456')
}