插入删除行或列, 移动范围单元格

插入行和列

你可以使用工作表相关的方法来插入行和列:

默认是一行或一列。例如在第七行插入一行(存在第七行):

>>> ws.insert_rows(7)

删除多行或多列

删除 F:H

>>> ws.delete_cols(6, 3)

备注

当行或列被插入或删除时,Openpyxl 不管理依赖项,如公式、表格、图表等。这被认为超出了专注于管理文件格式的库的范围。因此,客户端代码 必须 实现任何特定用例所需的功能。

单元格的移动范围

您还可以在工作表中移动单元格范围

>>> ws.move_range("D4:F10", rows=-1, cols=2)

这会将 D4:F10 单元格向上移动一行向右移动两列,已存在的单元格将会被覆盖

如果单元格包含公式,你可以让 openpyxl 帮你进行翻译,但也并非总是你想要的结果,因此默认是禁用的。同时,只有单元格本身的公式将会被翻译。其他单元格对该单元格的引用或已定义的名称将不会被更新。你可以使用 Parsing Formulas 来做这件事:

>>> ws.move_range("G4:H10", rows=1, cols=1, translate=True)

这将使公式中的相对引用在该范围内移动一行和一列。