跳到主要内容

增加操作

场景说明

在文档中创建表格和动态增加表格行列,支持在当前选区或指定区域插入表格,以及为表格设置标题。

适用场景:

  • 数据表格创建
  • 表单设计
  • 动态数据展示
  • 表格结构扩展

相关 API 文档

示例代码

创建自定义行列的表格

在当前选区位置插入表格

async function createTableAtSelection() {
// 在当前选区位置创建一个3行4列的表格
// 参数:rowNum - 行数, columnNum - 列数
const table = await Application.ActiveDocument.Tables.add(3, 4);
console.log('表格已在当前选区位置创建');
}

在指定区域插入表格

async function createTableAtBookmark() {
// 获取指定书签位置
const bookmark = await Application.ActiveDocument.Bookmarks.item('tablePlace');
const range = await bookmark.range;

// 在书签位置创建表格(会替换书签区域的内容)
// 参数:rowNum - 行数, columnNum - 列数
const table = await range.Tables.add(5, 4);
console.log('表格已在书签位置创建');
}

带标题的空表格

async function createTableWithTitle() {
// 创建一个3行4列的表格,并设置标题
const table = await Application.ActiveDocument.Tables.add(3, 4, {
title: '员工信息表'
});
console.log('带标题的表格创建成功');

// 通过标题获取表格
const tableByTitle = await Application.ActiveDocument.Tables.item('员工信息表');

// 获取表格的标题
const title = await tableByTitle.title;
console.log('表格标题:', title);
}

增加表格行与列

async function addRowsAndColumns() {
// 获取表格
const table = await Application.ActiveDocument.Tables.item(1);

// 获取当前行数和列数
const currentRows = await table.Rows.count;
const currentCols = await table.Columns.count;
console.log(`当前表格: ${currentRows} 行 × ${currentCols}`);

// 在表格末尾添加2行
await table.Rows.add(currentRows, 2, false);
console.log('成功在表格末尾添加2行');

// 在表格末尾添加1列
await table.Columns.add(currentCols, 1, false);
console.log('成功在表格末尾添加1列');

// 获取新的行列数
const newRows = await table.Rows.count;
const newCols = await table.Columns.count;
console.log(`表格现在是 ${newRows} 行 × ${newCols}`);
}

注意事项

  • 创建表格时,行数和列数最大为 20;行序号和列序号都从 1 开始
  • 表格标题可以用作表格的唯一标识符
  • add() 方法的 isBefore 参数:
    • 对于行:true 在上方插入,false 在下方插入
    • 对于列:true 在左侧插入,false 在右侧插入