通过Python 在Excel工作表中轻松插入行、列

文章目录

Excel表格的编辑是数据处理中的常见需求。无论是添加新的数据列,还是插入空白行以分隔内容, 免费库Free Spire.XLS for Python提供了简单高效的解决方案。本文将手把手教你如何 通过Python代码在Excel中插入行和列

一、环境准备

通过pip安装免费Python Excel库Free Spire.XLS for Python:

复制代码
pip install Spire.Xls.Free

❗ 注意:免费版本有部分限制(如最大行数),仅适用于数据量较小简单的 Excel 文档。

二、Python在Excel中插入行

示例1:插入单行

使用 InsertRow(rowIndex: int) 方法可以在指定索引处插入新行。

下面的示例展示了如何在 Excel 工作表第5行上方插入一行空白行。

python 复制代码
from spire.xls import *
from spire.xls.common import *

# 加载Excel文档
workbook = Workbook()
workbook.LoadFromFile("示例1.xlsx")

# 获取第一张工作表
worksheet = workbook.Worksheets[0]

# 插入一行作为第五行
worksheet.InsertRow(5)

# 保存Excel
workbook.SaveToFile("插入单行.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

示例2:插入多行

如果你需要一次性插入多行,可以使用 InsertRow(rowIndex: int, rowCount: int) 方法。第一个参数代表起始行索引,第二个参数代表需要插入的行数。

在第5行上方插入三行空白行的代码块如下:

python 复制代码
worksheet.InsertRow(5,3)

效果图:

三、Python在Excel中插入列

示例1:插入单列

在指定索引处插入新列可以使用 InsertColumn(columnIndex: int) 方法。

下面的示例展示了如何在 Excel 工作表第4列左侧插入空白列。

python 复制代码
from spire.xls import *
from spire.xls.common import *

# 加载Excel文档
workbook = Workbook()
workbook.LoadFromFile("示例1.xlsx")

# 获取第一张工作表
worksheet = workbook.Worksheets[0]

# 插入空白列作为第2列 
worksheet.InsertColumn(2)

# 保存Excel
workbook.SaveToFile("插入单列.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

示例2:插入多列

如果需要一次性插入多列,可以通过 InsertColumn(columnIndex: int, columnCount: int) 方法指定插入的列数。

下面代码块展示了如何在第4列左侧插入2列空白列的:

python 复制代码
worksheet.InsertColumn(4, 2)\

效果图:

四、插入行列的注意事项

  • 索引位置

    在使用 InsertRowInsertColumn 方法时,行和列的索引是从 1 开始的,而不是从 0 开始。例如,sheet.InsertRow(2) 表示在第 2 行之前插入一行。

  • 数据移动

    插入行或列后,原来位置及以下的行或右侧的列会自动下移或右移,不会覆盖原有数据。

五、结语

通过Free Spire.XLS for Python,我们只需几行代码即可实现Excel行列的动态插入。无论是批量处理报告还是自动化数据整理,这个轻量级库都能显著提升工作效率。对于更复杂的需求(如合并单元格条件格式等),建议参考官方教程合集探索更多功能。

相关推荐
蜡笔小马4 分钟前
10.Boost.Geometry R-tree 空间索引详解
开发语言·c++·算法·r-tree
IOsetting4 分钟前
金山云主机添加开机路由
运维·服务器·开发语言·网络·php
程序媛徐师姐11 分钟前
Python基于爬虫的网络小说数据分析系统【附源码、文档说明】
爬虫·python·python爬虫·网络小说数据分析系统·pytho网络小说数据分析系统·python爬虫网络小说·python爬虫的网络小说数据
清水白石00818 分钟前
深入解析 LRU 缓存:从 `@lru_cache` 到手动实现的完整指南
java·python·spring·缓存
林开落L18 分钟前
从零开始学习Protobuf(C++实战版)
开发语言·c++·学习·protobuffer·结构化数据序列化机制
JaydenAI22 分钟前
[LangChain之链]LangChain的Chain——由Runnable构建的管道
python·langchain
kali-Myon22 分钟前
2025春秋杯网络安全联赛冬季赛-day3
python·安全·web安全·ai·php·web·ctf
牛奔23 分钟前
Go 是如何做抢占式调度的?
开发语言·后端·golang
AbsoluteLogic28 分钟前
Python——彻底明白Super() 该如何使用
python
符哥200831 分钟前
C++ 进阶知识点整理
java·开发语言·jvm