颂风侯 发表于 2024-11-19 17:00:10

删除excel行

使用python对excel做如下操作,已知道excel页数为page,要求对超过21*page的行全部删除

FishC 发表于 2024-11-19 17:05:33

要使用Python删除Excel中的行,可以使用`openpyxl`库。下面是一个示例代码,假设你已经安装了`openpyxl`,它将删除所有超过`21 * page`的行。

import openpyxl

def delete_rows(file_path, page):
    # 打开Excel文件
    workbook = openpyxl.load_workbook(file_path)
   
    # 遍历每个工作表
    for sheet in workbook.worksheets:
      # 计算要保留的行数
      max_rows_to_keep = 21 * page
      
      # 获取当前工作表的总行数
      total_rows = sheet.max_row
      
      # 检查是否需要删除行
      if total_rows > max_rows_to_keep:
            # 删除超出范围的行
            for row in range(total_rows, max_rows_to_keep, -1):
                sheet.delete_rows(row)

    # 保存修改后的Excel
    workbook.save(file_path)

# 使用示例
file_path = 'your_excel_file.xlsx'
page_number = 2# 假设有2页
delete_rows(file_path, page_number)

请根据你的需要更改`file_path`和`page_number`变量。这个程序会遍历Excel文件中的每个工作表,并删除所有超过`21 * page`的行。确保在运行代码之前备份文件,以防数据丢失。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 删除excel行