主题
文字组件表格操作相关 API
表格对象
ActiveDocument.Tables
文档中所有表格的集合
语法
表达式.ActiveDocument.Tables
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
}
插入表格
ActiveDocument.Tables.Add()
插入表格
语法
表达式.ActiveDocument.Tables.Add({ Range, NumRows, NumColumns, DefaultTableBehavior, AutoFitBehavior })
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Range | object | 是 | 位置信息。 表达式.ActiveDocument.ActiveWindow.Selection.Range | |
NumRows | number | 是 | 新建表格的行数 | |
NumColumns | number | 是 | 新建表格的列数 | |
DefaultTableBehavior | Number | 否 | 单元格是否自动调整大小以适应单元格的内容,可参考 Enum.WdDefaultTableBehavior | |
AutoFitBehavior | Number | 否 | 设置 Word 调整表格的大小的自动调整规则,可参考 Enum.WdAutoFitBehavior |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 插入表格
await tables.Add(
app.ActiveDocument.ActiveWindow.Selection.Range, // 位置信息
3, // 新增表格的行数
3, // 新增表格的列数
1, // 启用自动调整功能
1 // 根据表格中包含的内容自动调整表格的大小
)
}
获取表格总个数
ActiveDocument.Tables.Count
获取页面中总表格数量
语法
表达式.ActiveDocument.Tables.Count
表达式:文档类型应用对象
返回值
返回 Number
表示页面中总表格数量
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取页面中总表格数量
const count = await tables.Count
console.log(count)
}
获取单个表格对象
ActiveDocument.Tables.Item()
获取单个表格
语法
表达式.ActiveDocument.Tables.Item(Index)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | number | 是 | 第 Index 个表格 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
}
删除单个表格
ActiveDocument.Tables.Item(Index).Delete()
删除表格
语法
表达式.ActiveDocument.Tables.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 删除第 1 个表格
await tableOne.Delete()
}
获取单个表格的区域
ActiveDocument.Tables.Item(Index).Range
表格的范围
语法
表达式.ActiveDocument.Tables.Item(Index).Range
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取第 1 个表格的范围
const range = await tableOne.Range
}
获取表格列对象
ActiveDocument.Tables.Item(Index).Columns
获取表格列
语法
表达式.ActiveDocument.Tables.Item(Index).Columns
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取第 1 个表格的所有列
const columns = tableOne.Columns
}
获取单表格总列数
ActiveDocument.Tables.Item(Index).Columns.Count
获取表格总列数
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Count
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const columns = await tableOne.Columns
// 获取表格总列数
const count = await columns.Count
console.log(count)
}
单表格插入列
ActiveDocument.Tables.Item(Index).Columns.Add()
插入表格列
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Add(BeforeColumn)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
BeforeColumn | string | 是 | 代表将会直接显示在新列右侧的 Column 对象 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const columns = await tableOne.Columns
// 插入列
await columns.Add(1)
}
获取表格单列对象
ActiveDocument.Tables.Item(Index).Columns.Item()
获取表格某一列
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Item(Index)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | number | 是 | 第 Index 列 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const columns = await tableOne.Columns
// 获取表格第 1 列
const columnOne = await columns.Item(1)
}
删除表格单列
ActiveDocument.Tables.Item(Index).Columns.Item(Index).Delete()
删除表格列
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const columns = await tableOne.Columns
// 获取表格第 1 列
const columnOne = await columns.Item(1)
// 删除第 1 列
columnOne.Delete()
}
设置表格单列宽度
ActiveDocument.Tables.Item(Index).Columns.Item(Index).SetWidth()
设置表格列的宽度
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Item(Index).SetWidth(ColumnWidth, RulerStyle)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ColumnWidth | number | 是 | 指定列的宽度,以磅为单位 | |
RulerStyle | enum | 否 | 控制 Word(文字)调整单元格宽度的方式,可参照 Enum.WdRulerStyle |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const columns = await tableOne.Columns
// 获取表格第 1 列
const columnOne = await columns.Item(1)
// 调整第 1 列宽度
columnOne.SetWidth(50)
}
获取表格单列区域
ActiveDocument.Tables.Item(Index).Columns.Item(Index).Range
表格列的范围
语法
表达式.ActiveDocument.Tables.Item(Index).Columns.Item(Index).Range
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有列
const rows = await tableOne.Columns
// 获取表格第 1 列
const rowOne = await rows.Item(1)
// 获取第 1 列的 Range 对象
const range = rowOne.Range
}
获取表格行对象
ActiveDocument.Tables.Item(Index).Rows
获取表格行
语法
表达式.ActiveDocument.Tables.Item(Index).Rows
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取第 1 个表格的所有行
const rows = tableOne.Rows
}
获取表格总行数
ActiveDocument.Tables.Item(Index).Rows.Count
获取表格总行数
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Count
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 获取表格总行数
const count = await rows.Count
console.log(count)
}
插入表格行
ActiveDocument.Tables.Item(Index).Rows.Add()
插入表格行
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Add(BeforeRow)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
BeforeRow | string | 是 | 代表将会直接显示在新行下方的 Rows 对象 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 插入行
await rows.Add(1)
}
获取表格单行对象
ActiveDocument.Tables.Item(Index).Rows.Item()
获取表格某一行
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | number | 是 | 第 Index 行 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 获取表格第 1 行
const rowOne = await rows.Item(1)
}
删除表格行
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Delete()
删除表格行
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 获取表格第 1 行
const rowOne = await rows.Item(1)
// 删除第 1 行
rowOne.Delete()
}
设置表格行高
ActiveDocument.Tables.Item(Index).Rows.Item(Index).SetHeight()
设置表格行的宽度
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).SetHeight(RowHeight, HeightRule)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RowHeight | number | 是 | 指定行的高度,以磅为单位 | |
HeightRule | enum | 否 | 用于确定指定行的高度的规则,可参照 Enum.WdRowHeightRule |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 获取表格第 1 行
const rowOne = await rows.Item(1)
// 调整第 1 行高度
rowOne.SetHeight(50)
}
获取表格行区域
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Range
表格行的范围
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Range
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取所有表格
const tables = await app.ActiveDocument.Tables
// 获取第 1 个表格
const tableOne = await tables.Item(1)
// 获取表格所有行
const rows = await tableOne.Rows
// 获取表格第 1 行
const rowOne = await rows.Item(1)
// 获取第 1 行的 Range 对象
const range = rowOne.Range
}
获取单元格对象
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells 或者 ActiveDocument.Tables.Item(Index).Columns.Item(Index).Cells
表格列、表格行、选定内容或区域中的 Cell 对象的集合。
后面统一用 行(Rows)来演示对应的单元格
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells
表达式.ActiveDocument.Tables.Item(Index).Columns.Item(Index).Cells
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个表格
const tableOne = await app.ActiveDocument.Tables.Item(1)
// 获取表格第 1 行的第 1 个单元格的文本
const rowText = await tableOne.Rows.Item(1).Cells.Item(1).Range.Text
console.log(rowText)
// 获取表格第 2 列的第 2 个单元格的文本
const columnText = await tableOne.Rows.Item(2).Cells.Item(2).Range.Text
console.log(columnText)
}
获取单个单元格对象
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item()
某一个单元格
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | string | 是 | 第 Index 个单元格 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个表格
const tableOne = await app.ActiveDocument.Tables.Item(1)
// 获取表格第 1 行的第 1 个单元格
const rowText = await tableOne.Rows.Item(1).Cells.Item(1)
}
删除单个单元格
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Delete()
删除单元格
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个表格
const tableOne = await app.ActiveDocument.Tables.Item(1)
// 获取表格第 1 行的第 1 个单元格
const cellOne = await tableOne.Rows.Item(1).Cells.Item(1)
// 删除该单元格所在的行
await cellOne.Delete()
}
设置单个单元格宽度
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).SetWidth()
设置表格行的宽度
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).SetWidth()
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RowWidth | number | 是 | 指定行的宽度,以磅为单位 | |
HeightRule | enum | 否 | 用于确定指定行的高度的规则,可参照 Enum.WdRowHeightRule |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个表格
const tableOne = await app.ActiveDocument.Tables.Item(1)
// 获取表格第 1 行的第 1 个单元格
const cellOne = await tableOne.Rows.Item(1).Cells.Item(1)
// 调整该单元格所在的宽度
await cellOne.SetWidth(50)
}
设置单个单元格高度
ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).SetHeight()
设置表格列的高度
语法
表达式.ActiveDocument.Tables.Item(Index).Rows.Item(Index).Cells.Item(Index).SetHeight(RowHeight, HeightRule)
表达式:文档类型应用对象
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RowHeight | number | 是 | 指定行的高度,以磅为单位 | |
HeightRule | enum | 否 | 用于确定指定行的高度的规则,可参照 Enum.WdRowHeightRule |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取第 1 个表格
const tableOne = await app.ActiveDocument.Tables.Item(1)
// 获取表格第 1 行的第 1 个单元格
const cellOne = await tableOne.Rows.Item(1).Cells.Item(1)
// 调整该单元格所在的高度
await cellOne.SetHeight(50)
}