用Python在Excel工作表中创建、修改及删除表格区域

在数据分析和自动化处理的工作中,Excel作为一种强大的工具被广泛应用,而通过Python来操作Excel工作表中的表格,可以极大提高工作效率。表格(Table)是Excel中的一种重要结构,它是一个特殊的单元格区域,不仅能帮助我们组织和展示数据,还能提供便捷的数据筛选、排序和分析功能。使用Python,我们可以在Excel工作表中轻松创建、修改或删除这些表格 ,进而实现批量处理、动态更新以及自定义报告的自动生成。本文将介绍如何使用Python在Excel工作表中创建、修改及删除表格

文章目录

本文所使用的方法需要用到Spire.XLS for Python,PyPI:pip install spire.xls

用Python在Excel工作表中创建表格

我们可以使用Worksheet.ListObjects.Create(string: tableName, CellRange: cellRange)方法,指定表名和单元格范围,直接在Excel工作表中创建表格。以下是操作步骤示例:

  1. 导入所需模块:WorkbookTableBuiltInStyles(用于应用内置表格样式)。
  2. 创建一个Workbook实例。
  3. 使用Workbook.LoadFromFile()方法载入Excel文件。
  4. 使用Workbook.Worksheets.get_Item()获取指定工作表。
  5. 使用Worksheet.Range.get_Item()方法获取用于创建表格的单元格区域。
  6. 使用Worksheet.ListObjects.Create(string: tableName, CellRange: cellRange)方法创建表格。
  7. 根据需要设置表格格式。
  8. 使用Workbook.SaveToFile()方法保存更改。
  9. 释放资源。

代码示例

python 复制代码
from spire.xls import Workbook, TableBuiltInStyles

# 创建一个Workbook实例
workbook = Workbook()

# 加载Excel文件
workbook.LoadFromFile("Sample.xlsx")

# 获取工作表
sheet = workbook.Worksheets.get_Item(0)

# 获取表格的单元格范围
cellRange = sheet.Range.get_Item("A1:F9")

# 创建表格
table = sheet.ListObjects.Create("Table1", cellRange)

# 格式化表格
table.BuiltInTableStyle = TableBuiltInStyles.TableStyleLight17

# 保存工作簿
workbook.SaveToFile("output/CreateTableExcel.xlsx")
workbook.Dispose()

结果

用Python修改Excel工作表中的表格

我们可以使用Worksheet.ListObjects.get_Item()方法根据索引从工作表中获取表格对象,然后使用其下的属性对表格进行修改,如修改所在单元格区域、是否显示表头、表格名。以下是操作步骤示例:

  1. 导入所需模块:WorkbookTableBuiltInStyles(用于修改内置表格样式)。
  2. 创建一个Workbook实例。
  3. 使用Workbook.LoadFromFile()方法载入Excel文件。
  4. 使用Workbook.Worksheets.get_Item()获取指定工作表。
  5. 使用Worksheet.ListObjects.get_Item()方法从工作表中获取表格。
  6. 使用其下的属性对表格进行修改。
  7. 使用Workbook.SaveToFile()方法保存更改。
  8. 释放资源。

代码示例

python 复制代码
from spire.xls import Workbook, TableBuiltInStyles

# 创建一个Workbook实例
workbook = Workbook()

# 加载Excel文件
workbook.LoadFromFile("output/CreateTableExcel.xlsx")

# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)

# 获取第一个表格
table = sheet.ListObjects.get_Item(0)

# 使用IListObject类的属性修改表格
table.Location = sheet.Range.get_Item("A1:C9")
table.DisplayHeaderRow = False
table.BuiltInTableStyle = TableBuiltInStyles.TableStyleDark5
table.Name = "NewTable"

# 保存工作簿
workbook.SaveToFile("output/ModifyTableExcel.xlsx")
workbook.Dispose()

结果

用Python移除Excel工作表中的表格

使用Worksheet.ListObjects.RemoveAt()方法可以根据索引从Excel工作表中删除指定表格,从而将其转变为普通单元格区域,并移除表格格式。以下是操作步骤示例:

  1. 导入所需模块:Workbook
  2. 创建一个Workbook实例。
  3. 使用Workbook.LoadFromFile()方法载入Excel文件。
  4. 使用Worksheet.ListObjects.RemoveAt()方法根据索引删除指定表格。
  5. 使用Workbook.SaveToFile()方法保存更改。
  6. 释放资源。

代码示例

python 复制代码
from spire.xls import Workbook, TableBuiltInStyles

# 创建一个Workbook实例
workbook = Workbook()

# 加载Excel文件
workbook.LoadFromFile("output/ModifyTableExcel.xlsx")

# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)

# 从工作表中移除一个表格
sheet.ListObjects.RemoveAt(0)

# 保存工作簿
workbook.SaveToFile("output/RemoveTableExcel.xlsx")
workbook.Dispose()

结果

本文演示如何使用Python在Excel工作表中创建、修改及删除表格。

申请免费License

相关推荐
青少儿编程课堂1 小时前
威佐夫博弈(双堆取子游戏)解析
c++·python·算法·bfs·信息学竞赛
hhzz2 小时前
【OpenCV 入门到精通 03】图像入门:读取、显示、保存完全指南
人工智能·python·opencv·计算机视觉
金融小师妹3 小时前
AI趋势识别:黄仁勋宣布“AGI时代”到来,Astra能力跃迁背后的AI安全边界
大数据·python·深度学习·重构·逻辑回归
2501_941875285 小时前
从配置中心到动态管理的互联网工程语法演进与多语言实践分享
开发语言·python
hfywmsj6 小时前
广州餐饮铺位招租决策模型:多因子选址系统设计
开发语言·人工智能·python·广州餐饮铺位招租
努力的lpp8 小时前
php反序列化一(大白话版)
开发语言·web安全·php·ctf·反序列化
菜鸟~noob2338 小时前
【电子战】第03篇:CFAR(恒虚警)处理【含matlab代码】
开发语言·matlab
泡海椒9 小时前
内置SPI函数库详解:JQuick-Java Builtin工具类实战用法
java·开发语言·python
hqyjzsb9 小时前
零 AI 项目经验,学 Python 转型 AI 的正确顺序是什么?
开发语言·人工智能·python·算法·职场和发展·数据挖掘·数据分析
sanjiaomao33310 小时前
从论文公式到Python实现:用单元测试校验滑动平均算法
python·算法·单元测试