增加操作
场景说明
在文档中创建表格和动态增加表格行列,支持在当前选区或指定区域插入表格,以及为表格设置标题。
适用场景:
- 数据表格创建
- 表单设计
- 动态数据展示
- 表格结构扩展
相关 API 文档
- Tables - 表格集合
- Tables.add - 创建表格
- Table - 表格对象
- Table.title - 表格标题属性
- Rows - 表格行集合
- Rows.add - 添加行
- Columns - 表格列集合
- Columns.add - 添加列
示例代码
创建自定义行列的表格
在当前选区位置插入表格
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在右侧插入
- 对于行: