python读取佛山的excel表格内所有sheet,固定某几列数据不删,以最后一行第二列之后的‘合计’数据,若合计行的数值低于90则删除这列数据
时间: 2024-05-14 22:11:57 浏览: 96
以下是一个实现此功能的Python代码示例:
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('佛山数据.xlsx')
# 遍历所有sheet
for sheet_name in workbook.sheetnames:
sheet = workbook[sheet_name]
# 获取最后一行数据
last_row = sheet.max_row
# 获取第二列之后的列索引
start_col = 3
end_col = sheet.max_column
# 遍历每列数据
for col in range(start_col, end_col + 1):
# 判断是否为需要保留的列
if sheet.cell(row=1, column=col).value in ['A', 'B', 'C']:
continue
# 获取合计行的值
total_value = sheet.cell(row=last_row, column=col).value
# 判断是否需要删除该列数据
if total_value is not None and total_value < 90:
for row in range(1, last_row + 1):
sheet.cell(row=row, column=col).value = None
# 保存修改后的Excel文件
workbook.save('佛山数据_修改.xlsx')
在这个代码中,首先使用openpyxl库打开Excel文件,然后遍历所有sheet,并获取最后一行数据和第二列之后的列索引。接下来,遍历每列数据并判断是否需要删除该列数据。如果合计行的值低于90,则将该列数据的所有单元格值设置为None。最后,将修改后的Excel文件保存并关闭。
阅读全文