Python 在Word表格中插入、删除行或列-Python 在Word表格中插入列

时间:2024-07-18 12:56:51

与插入行不同,插入列没有可以直接调用的方法。为了实现插入列的效果,我们可以在每一行中的指定位置插入单元格来添加新列。具体操作如下:

  1. 通过 LoadFromFile() 方法加载Word文档;
  2. 查找文档指定节中查找并返回其中第一个表格 Table 对象;
  3. 遍历表格中的每一行;
  4. 创建单元格,然后使用 TableRow.Cells.Insert() 方法将其插入到每行指定位置处;
  5. 也可以使用 TableRow.AddCell() 方法直接在每行末尾处添加一个单元格;
  6. 保存文档。

示例代码:

from spire.doc import *
from spire.doc.common import *

# 加载Word文档
document = Document()
document.LoadFromFile("Word表格.docx")

# 获取第一节
section = document.Sections[0]

# 获取该节中的第一个表格
table = section.Tables[0] if isinstance(section.Tables[0], Table) else None

# 遍历表格的每一行
for i in range(table.Rows.Count):
    # 获取当前行
    row = table.Rows[i]

    # 在当前行的第三个位置处插入一个单元格
    cell = TableCell(document)  
    row.Cells.Insert(2, cell)

    # 设置新单元格的宽度
    row.Cells[2].SetCellWidth(40, CellWidthType.Point)

    # 在当前行的末尾添加一个新的单元格
    cell = row.AddCell()

    # 设置新单元格的宽度与第二列相同
    cell.Width = row.Cells[1].Width

# 保存文件
document.SaveToFile("插入列.docx", FileFormat.Docx2016)
document.Close()

生成文件如图:
Word表格插入列