Skip to main content

删除操作

场景说明

动态删除表格的行或列,支持删除单行/列或多行/列,可以指定删除方向。

适用场景:

  • 数据清理
  • 表格结构调整
  • 动态数据管理

相关 API 文档

示例代码

删除单行

async function deleteSingleRow() {
const table = await Application.ActiveDocument.Tables.item(1);
const rows = table.Rows;

// 删除第3行
// 参数:index - 行序号(必填)
const success = await rows.deleteRows(3);

if (success) {
console.log('删除第3行成功');
}
}

删除多行

async function deleteMultipleRows() {
const table = await Application.ActiveDocument.Tables.item(1);
const rows = table.Rows;

// 删除从第3行开始的2行(删除第3行和第4行)
// 参数:index - 起始行序号, cnt - 删除数量, isBefore - 是否向上删除
const success = await rows.deleteRows(
3, // index: 从第3行开始
2, // cnt: 删除2行
false // isBefore: false表示向下删除(删除第3行和第4行)
);

if (success) {
console.log('成功删除2行');
}
}

删除单列

async function deleteSingleColumn() {
const table = await Application.ActiveDocument.Tables.item(1);
const columns = table.Columns;

// 删除第2列
// 参数:index - 列序号(必填)
const success = await columns.deleteColumns(2);

if (success) {
console.log('删除第2列成功');
}
}

删除多列

async function deleteMultipleColumns() {
const table = await Application.ActiveDocument.Tables.item(1);
const columns = table.Columns;

// 删除从第2列开始的2列(删除第2列和第3列)
// 参数:index - 起始列序号, cnt - 删除数量, isBefore - 是否向左删除
const success = await columns.deleteColumns(
2, // index: 从第2列开始
2, // cnt: 删除2列
false // isBefore: false表示向右删除(删除第2列和第3列)
);

if (success) {
console.log('成功删除2列');
}
}

注意事项

  • 行序号和列序号都从 1 开始
  • deleteRows()deleteColumns() 方法的 isBefore 参数:
    • 对于行:true 向上删除,false 向下删除
    • 对于列:true 向左删除,false 向右删除
  • 删除操作无法撤销,需谨慎使用