Skip to content

工作簿(Workbook)

返回一个表示活动窗口中的工作簿对象

属性列表

属性说明
活动工作簿中的活动工作表,使用方法可参考 ActiveSheet
工作簿名称的集合,使用方法可参考 名称管理器
返回一个值,表示文档是否只读,此属性为只读属性。
返回一个值,表示文档是否只读可评论的权限,此属性为只读属性。
工作表对象
返回一个值,表示文档是否支持只读可评论权限,此属性为只读属性。

方法列表

方法说明
获取安全文档信息
设置自定义文档属性
获取自定义文档属性
清除撤销记录
通知所有打开的下拉面板关闭
关闭筛选 hover 提示
通知超链接关闭
将另一个文件中的工作表复制到当前文件
导出整个表格为对应的 PDF 或者 Img 图片,并获取导出后的 url
获取整个 Workbook 的评论
获取当前登录操作者信息
设置水印
获取水印
判断是否含有撤销记录
退出编辑
保存文件的改动,请注意,调用该接口会使文件的版本递增
配置迭代计算
开关多人同步筛选
跳转到@所在单元格
切换卡片视图面板

ActiveSheet

活动工作簿中的活动工作表,使用方法可参考 ActiveSheet

语法

表达式.ActiveWorkbook.ActiveSheet

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

示例

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

  const app = instance.Application

  // 活动工作簿
  const activeWorkbook = await app.ActiveWorkbook

  // 活动工作表
  const activeSheet = await activeWorkbook.ActiveSheet
}

Names

工作簿名称的集合,使用方法可参考 名称管理器

语法

表达式.ActiveWorkbook.Names

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

示例

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

  const app = instance.Application

  // 活动工作簿
  const activeWorkbook = await app.ActiveWorkbook

  // 工作簿名称集合
  const names = await activeWorkbook.Names
}

ReadOnly

返回一个值,表示文档是否只读,此属性为只读属性。

语法

表达式.ActiveWorkbook.ReadOnly

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

示例

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

  const app = instance.Application

  const ReadOnly = await app.ActiveWorkbook.ReadOnly
}

ReadOnlyComment

返回一个值,表示文档是否只读可评论的权限,此属性为只读属性。

语法

表达式.ActiveWorkbook.ReadOnlyComment

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

示例

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

  const app = instance.Application

  const ReadOnlyComment = await app.ActiveWorkbook.ReadOnlyComment
}

Sheets

工作表对象

语法

表达式.ActiveWorkbook.Sheets

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

示例

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

  const app = instance.Application

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

SupportReadOnlyComment

返回一个值,表示文档是否支持只读可评论权限,此属性为只读属性。

语法

表达式.ActiveWorkbook.SupportReadOnlyComment

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

示例

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

  const app = instance.Application

  const SupportReadOnlyComment = await app.ActiveWorkbook.SupportReadOnlyComment
}

BuiltinDocumentProperties()

获取安全文档信息

语法

表达式.ActiveWorkbook.BuiltinDocumentProperties({ Name })

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

参数

属性数据类型默认值必填说明
Name
string
标题 Title、安全值 Security、大小 Size、作者 Author、企业编号 CorpId、安全文档编号 Guid

示例

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

  const app = instance.Application

  const title = await app.ActiveWorkbook.BuiltinDocumentProperties('Title')
    .Value
  console.log('title: ', title)
}

SetCustomDocumentProperties()

设置自定义文档属性

语法

表达式.ActiveWorkbook.SetCustomDocumentProperties({ Name, Type, Value })

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

参数

属性数据类型默认值必填说明
Name
string
属性名
Type
见说明
属性类型。可以是 string/date/float/boolean
Value
string
属性值。注:date 类型也直接用 string 传,格式为:YYYY/MM/DD 或 YYYY-MM-DD

示例

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

  const app = instance.Application

  await app.ActiveWorkbook.SetCustomDocumentProperties({
    Name: 'selfName',
    Type: 'date',
    Value: '2024-3-25'
  })
}

CustomDocumentProperties()

获取自定义文档属性

语法

表达式.ActiveWorkbook.CustomDocumentProperties({ Name })

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

参数

属性数据类型默认值必填说明
Name
string
自定义属性名

示例

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

  const app = instance.Application

  const txt = await app.ActiveWorkbook.CustomDocumentProperties('selfName').Value
  console.log('txt: ', txt)
}

ClearTransactions()

清除撤销记录

语法

表达式.ActiveWorkbook.ClearTransactions()

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

示例

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

  const app = instance.Application

  // 清除撤销记录
  await app.ActiveWorkbook.ClearTransactions()
}

CloseDropdownPanels()

通知所有打开的下拉面板关闭

语法

表达式.ActiveWorkbook.CloseDropdownPanels()

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

示例

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

  const app = instance.Application

  // 通知所有打开的下拉面板关闭
  await app.ActiveWorkbook.CloseDropdownPanels()
}

CloseFilterTips()

关闭筛选 hover 提示

语法

表达式.ActiveWorkbook.CloseFilterTips()

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

示例

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

  const app = instance.Application

  // 关闭筛选hover提示
  await app.ActiveWorkbook.CloseFilterTips()
}

通知超链接关闭

语法

表达式.ActiveWorkbook.CloseHyperLink()

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

示例

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

  const app = instance.Application

  // 通知超链接关闭
  await app.ActiveWorkbook.CloseHyperLink()
}

CopySheetFromBook()

将另一个文件中的工作表复制到当前文件

语法

表达式.ActiveWorkbook.CopySheetFromBook({ FromBookFileId, FromBookFileName, FromeSheetName, DestSheetName })

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

参数

属性数据类型默认值必填说明
FromBookFileId
String
目标文件的 id
FromBookFileName
String
目标文件的名称
FromeSheetName
String
目标文件的工作表名称
DestSheetName
String
需要拷贝到当前文件的工作表名称

示例

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

  const app = instance.Application

  // 活动工作簿
  const activeWorkbook = await app.ActiveWorkbook

  // 复制 ID 为 100161090439 命名为 “工作簿” 的工作表中的 Sheet1,到当前工作簿的 Sheet6 工作表上
  const result = await activeWorkbook.CopySheetFromBook(
    '100161090439',
    '工作簿',
    'Sheet1',
    'Sheet6'
  )
  console.log(result)
}

ExportAsFixedFormat()

导出整个表格为对应的 PDF 或者 Img 图片,并获取导出后的 url

语法

表达式.ActiveWorkbook.ExportAsFixedFormat({ Type })

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

参数

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

返回值

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

示例 1:导出 PDF

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

  const app = instance.Application

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

示例 2:导出图片

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

  const app = instance.Application

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

GetComments()

获取整个 Workbook 的评论

语法

表达式.ActiveWorkbook.GetComments()

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

返回值

属性数据类型说明
CellComments
Array<Object>
评论信息集合
PosInfo
String
单元格信息
SheetName
String
Sheet 名称
UserIds
Array<String>
用户 id 集合

评论信息集合

属性数据类型说明
DateTime
String
时间戳
Text
String
评论文本
Time
String
转换后的时间
UserId
String
用户 id

示例

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

  const app = instance.Application

  // 获取整个 Workbook 的评论
  const comments = await app.ActiveWorkbook.GetComments()
  console.log(comments)
}

GetOperatorsInfo()

获取当前登录操作者信息

语法

表达式.ActiveWorkbook.GetOperatorsInfo()

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

返回值

属性类型说明
type
String
请求类型
+
response
response {}
用户信息列表

示例

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

  const app = instance.Application

  // 获取当前登录操作者信息
  const operatorsInfo = await app.ActiveWorkbook.GetOperatorsInfo()
  console.log(operatorsInfo)
}

SetWatermark()

设置水印

语法

表达式.ActiveWorkbook.SetWatermark()

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

参数

属性数据类型默认值必填说明
Type
number
有无水印, 1 有, 0 无
Value
string
水印文字
FillStyle
string
填充样式
Font
string
水印字体
Rotate
number
旋转度
Horizontal
number
水平间距
Vertical
number
垂直间距

示例

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

  const app = instance.Application

  await app.ActiveWorkbook.SetWatermark({
    Type: 1,
    Value: 'WPS WebOffice \n 测试水印测试水印测试水印',
    FillStyle: 'rgba(192, 192, 192, 0.6)',
    Font: 'bold 20px Serif',
    Rotate: (-45 * Math.PI) / 180,
    Horizontal: 50,
    Vertical: 100
  })
}

GetWatermark()

获取水印

语法

表达式.ActiveWorkbook.GetWatermark()

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

示例

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

  const app = instance.Application

  await app.ActiveWorkbook.GetWatermark()
}

HasTransactions()

判断是否含有撤销记录

语法

表达式.ActiveWorkbook.HasTransactions()

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

示例

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

  const app = instance.Application

  // 判断是否含有撤销记录
  await app.ActiveWorkbook.HasTransactions()
}

QuitCellEdit()

退出编辑

语法

表达式.ActiveWorkbook.QuitCellEdit()

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

示例

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

  const app = instance.Application

  // 退出编辑
  await app.ActiveWorkbook.QuitCellEdit()
}

Save()

保存文件的改动,请注意,调用该接口会使文件的版本递增

语法

表达式.ActiveWorkbook.Save()

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

参数

参数数据类型默认值必填说明
SaveEditingData
boolean
false
是否保存处于编辑状态的数据(编辑状态表示单元格的输入框还未失焦,仍然处于输入状态)

返回值

属性数据类型说明
result
String
保存状态
size
Number
文件大小,单位 byte
version
Number
版本

保存状态说明

保存状态说明
ok
版本保存成功,可在历史版本中查看
nochange
文档无更新,无需保存版本
SavedEmptyFile
暂不支持保存空文件 触发场景:内核保存完后文件为空
SpaceFull
空间已满
QueneFull
保存中请勿频繁操作 触发场景:服务端处理保存队列已满,正在排队
fail
保存失败

示例

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

  const app = instance.Application

  // 保存文件的改动
  const saveResult = await app.ActiveWorkbook.Save()
  console.log(saveResult)
}

SetCalcOptions()

配置迭代计算

语法

表达式.ActiveWorkbook.SetCalcOptions()

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

参数

属性数据类型默认值必填说明
EnableIterate
bool
迭代计算
IterateCount
number
最多迭代次数
IterateDelta
number
最大误差
FullPrecision
bool
计算已显示精度为准
CalcMode
Enum
重新计算模式 更多可看 Enum.XlCalcModeType
Callback
func
回调函数

示例

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

  const app = instance.Application

  // 配置迭代计算
  await app.ActiveWorkbook.SetCalcOptions({
    EnableIterate: false,
    IterateCount: 300,
    IterateDelta: 0.1,
    FullPrecision: false,
    CalcMode: 'automatic',
    Callback: res => console.error('回调函数', res)
  })
}

SetFilterShared()

开关多人同步筛选

语法

表达式.ActiveWorkbook.SetFilterShared({ Checked })

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

参数

属性数据类型默认值必填说明
Checked
Boolean
开启 true,关闭 false

示例

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

  const app = instance.Application

  // 活动工作簿
  const activeWorkbook = await app.ActiveWorkbook

  // 开启多人同步筛选
  const result = await activeWorkbook.SetFilterShared(true)
}

SkipAtCell()

跳转到@所在单元格

语法

表达式.ActiveWorkbook.SkipAtCell()

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

参数

属性数据类型默认值必填说明
AtId
string
-
@id

示例

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

  const app = instance.Application

  // 跳转到@所在单元格
  await app.ActiveWorkbook.SkipAtCell(AtId)
}

SwitchCardView()

切换卡片视图面板

语法

表达式.ActiveWorkbook.SwitchCardView()

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

参数

传入一个布尔值,表明打开或者关闭卡片视图面板。

属性数据类型默认值必填说明
Status
Boolean
-
目前仅支持打开面板

示例

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

  const app = instance.Application

  // 切换卡片视图面板-打开
  await app.ActiveWorkbook.SwitchCardView(true)
}